这个问题是关于最佳实践的,而不是问题。
我正在编写spring boot
休息服务,该服务将执行更新,这意味着基本上我正在执行POST
操作。输入参数类似于userId
,name
,emailAddress
,phoneNo
。
所以我的问题是,我可以做下面的事情吗?只需使用POST
来告知这是更新uri
,但将所有参数作为请求参数而不是requestBody
@PostMapping(value="/my-url )
public ResponseEntity<?> myMethod(
@RequestParam(value = "userId") String userId,
@RequestParam(value = "name") String name,
@RequestParam(value = "emailAddress") String emailAddress,
@RequestParam(value = "phoneNo") String phoneNo){
我知道这可行,但是可以接受吗? 如果可以的话,如果我们以requestparam的形式传递参数,将请求类型用作POST
的目的是什么。
感谢专家的观点。
答案 0 :(得分:1)
是的。说到最佳实践,我相信最好的方法是创建一个更好的@RequestBody
参数表的模型,然后在url
中传递多个参数。此外,创建模型可以确保所有可能的参数都是固定的,而且您不再需要考虑其强制性。
顺便说一句。更新操作的最佳做法是PUT
,而不是POST
请求