Java @Pathparam with POST Method



我必须只用一个参数发出请求,例如:

example.com/confirm/{unique-id-value}

我不希望在正文中获得任何数据,只对响应代码感兴趣。

需要建议使用GET或POST的方法

GET 我认为也可以,因为使用 pathparam 发出请求,但另一方面 POST 也是正确的使用,因为我不希望从正文接收任何数据,只是提出信息请求并且只对请求结果的状态代码感兴趣。

confirm 建议对此 URL 的请求将通过"确认"由唯一 ID 标识的某些"任务"来更改服务器上的某些状态。所以我们谈论"任务确认"的Reource(REST中的R(。GET请求将获取此类资源的当前状态。 GET不得有副作用,例如更改"任务确认"资源的状态。如果在GET请求之前未确认,则必须在此类请求之后未确认。

如果要更改"任务确认"资源的状态,则必须使用其他 HTTP 谓词。但是由于您写道您不会传递任何请求正文,因此很难推荐 RESTful 方法。

使用 GET

的一个缺点是它的响应经常被缓存,因此如果您反复查询相同的 ID,您可能无法获得预期的结果,除非您执行一些恶作剧来防止缓存(例如为每个请求将唯一时间戳附加到 GET URL(。另一方面,POST 请求永远不会被缓存,因此您每次都会获得正确的结果,而无需任何额外的工作。

相关内容

最新更新