【发布时间】:2020-01-06 18:28:49
【问题描述】:
这个问题是关于最佳实践而不是问题。
我正在编写一个spring boot 休息服务,它将执行更新,这意味着我基本上在做POSToperation。输入参数类似于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的目的是什么。
专家意见表示赞赏。
【问题讨论】:
-
是的,你可以做到。您可以创建 xml 或 json 格式的请求正文,而不是传递大量参数,以增加可见性。
-
将 requestparam 与
POST一起使用不是根本错误吗? -
技术上你可以做到,但它总是被用作请求正文,以防发布请求。
-
不是重复的。我问的是最佳实践,而这个问题是不同的。
标签: java rest spring-boot post