我在一个所有请求都是POST
请求的应用程序中使用了@RestController
......正如我从this post中学到的,您不能将单个post参数Map到单个方法参数,而是需要将所有参数 Package 在一个对象中,然后将该对象用作用@RequestBody
注解的方法参数,因此
@RequestMapping(value="/requestotp",method = RequestMethod.POST)
public String requestOTP( @RequestParam(value="idNumber") String idNumber , @RequestParam(value="applicationId") String applicationId) {
return customerService.requestOTP(idNumber, applicationId);
将无法处理主体{"idNumber":"345","applicationId":"64536"}
的POST
请求
我的问题是,我有大量POST
请求,每个请求只有一个或两个参数,创建所有这些对象只是为了接收其中的请求将是乏味的...所以,有没有其他类似于获取请求参数(URL参数)的处理方式?
2条答案
按热度按时间csga3l581#
有两种方法-
首先,您所做的只是将这些参数与url一起追加,而不需要在正文中给予它们。url将类似于- baseurl+/requestotp?idNumber=123&applicationId=123
第二,您可以按如下方式使用Map
zd287kbt2#
我已经修改了你的代码,请检查一下
DTO类别
}
Rest控制器方法
请求类型--应用程序/json {“标识号”:“345”,“应用程序ID”:“64536”}
或