当前位置: 代码迷 >> 综合 >> Required String parameter is not present
  详细解决方案

Required String parameter is not present

热度:48   发布时间:2023-11-28 06:00:00.0

出错部分代码: 

 public OverviewASRResponse getOverviewASR(@UserRole Integer role, @UserId Integer userId , @RequestParam(value="start_date") String start_date){
}

但是因为希望前端传给后端的是JOSN串,所以应该使用@RequestBody来接收数据,使用map的key-value形式去获取json传送过来的数据。

改正后:

    public OverviewASRResponse getOverviewASR(@UserRole Integer role, @UserId Integer userId , @RequestBody Map<String,Object> params){OverviewASRResponse response = new OverviewASRResponse();return response;}

总结:

① form-data、x-www-form-urlencoded:不可以用@RequestBody;可以用@RequestParam。这两种方式的时候没有json字符串部分。

② application/json:json字符串部分可以用@RequestBody;url中的?后面参数可以用@RequestParam

  相关解决方案