我应该在rest api中使用GET、POST或PUT来获得基于几个输入参数的输出吗?这些输入参数将作为请求体的一部分被



我正在编写一个rest api,它将根据请求体中的输入提供一些信息。我有点困惑我应该使用哪种http方法,即GET、PUT或POST。我知道会有请求体,所以我排除了GET的可能性,因为我做了一些研究,发现很少有服务器实现可以忽略GET的请求体。现在,问题仍然存在,我应该使用POST还是PUT。考虑到API的输出对于所提供的相同输入将保持不变(例如:如果输入为1,输出为真,则输入1的输出将始终保持真(,这意味着该方法应该是等幂的,与POST相比,我更倾向于使用PUT。只是想确认一下我的想法是否正确。如能提供任何帮助,我们将不胜感激。

GET请求在HTTP/1.1中不应该有请求体,更多阅读:具有请求正文的HTTP GET

顾名思义,PUT将资源放在某个地方,因此也不是选择的请求。

POST是我会选择做这样的事情。

或者,您可以将数据解析到GET的URL中。

(更多阅读:POST和PUT HTTP REQUEST之间有什么区别?(

(这是我的第一个答案——请留下反馈,这样我就可以改进了!(

最新更新