当前位置: 首页 > 面试题库 >

有没有一种方法来获取带有GET请求的请求正文?

乐正玺
2023-03-14
问题内容

我有这个API:

@Path("test")
@GET
@Consumes({MediaType.APPLICATION_JSON})
@Produces({MediaType.APPLICATION_JSON})
public Parameter performTest(Parameter in) {
    System.out.println(in);
}

但是in始终返回null。我可以将@GET更改为@POST,并且可以使用,但是我并没有真正执行创建或更新操作,因此使用post似乎很奇怪。

有没有办法通过球衣的GET请求获得身体?


问题答案:

TL; DR 正确的解决方案是使用POST。

“我可以将@GET更改为@POST,并且可以,但是我并没有真正执行创建或更新操作,因此使用post似乎很奇怪”

为什么这么奇怪?POST不限于创建/更新操作。

规范(RFC
7231,第4.3.3节POST
)说:

POST方法要求目标资源根据资源自身的特定语义来 处理 请求中包含的表示形式。例如,POST用于以下功能(以及其他功能):

  • 向数据处理过程提供数据块,例如以HTML格式输入的字段;

  • 将消息发布到公告板,新闻组,邮件列表,博客或类似的文章组;

  • 创建尚未由原始服务器识别的新资源;和

  • 将数据追加到资源的现有表示形式。

释义,POST的意思是“这里有一些数据,请为我处理”。

当然,在创建/更新中,“处理”通常是指“存储”,但这并不是处理数据的唯一方法。

在您的情况下,“过程”表示“使用这些参数运行测试”。



 类似资料:
  • 问题内容: 将请求正文与GET请求一起传递是否违反REST风格? 例如在Elasticsearch中过滤一些信息 甚至设计了一些工具来避免GET请求中的请求主体(例如邮递员) 问题答案: 从RFC: GET请求消息中的有效负载没有定义的语义。在GET请求上发送有效内容正文可能会导致某些现有实现拒绝该请求。 换句话说,这不是禁止的,但是它是未定义的行为,应避免使用。HTTP客户端,服务器和代理可以随

  • 问题内容: 在swift 3中建议使用带参数的GET的哪种方法? 范例: 提前致谢 ! 问题答案: 示例如何使用请求。

  • 问题内容: 我尝试了python 请求库文档中提供的示例。 使用,我得到了响应代码,但是我想获得所请求的每个页面的内容。例如,这不起作用: 问题答案: 注意 下面的答案是不适用于请求v0.13.0 +。编写此问题后,异步功能已移至。但是,你可以将其替换为下面的内容,它应该可以工作。 我已经留下了这个答案,以反映原始问题,即有关使用请求的问题。 要异步执行多个任务,你必须: 为每个对象定义一个函数(

  • 问题内容: 我正在为我们的应用程序开发新的RESTful Web服务。 在某些实体上执行GET时,客户端可以请求实体的内容。如果他们想添加一些参数(例如,对列表进行排序),则可以在查询字符串中添加这些参数。 另外,我希望人们能够在请求正文中指定这些参数。 HTTP / 1.1似乎并未明确禁止这样做。这将使他们能够指定更多信息,可能使指定复杂的XML请求更加容易。 我的问题: 这是个好主意吗? HT

  • 我正在发送一些字符串,例如: via放心 不幸的是,API返回500。我通过邮递员发送相同的请求,它工作得很好。唯一的区别是“assings”部分。邮递员请求后,看起来像: 当“放心”请求后,它是空的: 添加了所有标头,我尝试将其作为从.json文件解析的字符串发送。一切都给出相同的结果。有人知道问题出在哪里?

  • 问题内容: 我刚刚开始使用nodejs。我想知道是否有一种方法只能在应用程序中“一次”请求文件。我正在使用一个类框架来在我的JS项目中获取经典的OOPS。每个“类”都包含在其自己的JS文件中。我想“要求”每个文件中的类框架,以便它们可以独立运行,但希望框架的初始化代码仅执行一次。 我可以使用一个标志来自己实现,但是内置的方法会很好。搜索“ require一次”使我想到所有与PHP有关的问题。 问题