前端传递的JSON数据如下:
{
"menuDto":{
"menuId":514
,"menuName":"个人中心"
,"status":0
,"path":"/person"
,"parentId":10
}
}
Java后端controller接口如下:
@PostMapping(value = "/updatemenu.json", produces = { "application/json;charset=UTF-8" })
public AjaxResult updateMenu(@RequestBody Map<String, String> reqMap){
//测试
System.out.println(reqMap);
return AjaxResult.success();
}
结果请求已发送,返回错误信息,如下:
{
"retCode": "9999",
"retMsg": "menuDto数据类型格式不正确"
}
错误原因:后端接口方法接收的参数,用的是Map<String, String>
也就意味着你前提的JSON串的value,必须是String类型
我传递的JSON串:menuDto对应的是一个"{}",是一个对象,因此,后端接口中的参数类型应改为Map<String, Object>即可!