在前端用的是ajax进行传参,后端用的是HttpServletRequest获取参数,为什么传的参数print出来的是null?


在前端用的是ajax进行传参,后端用的是HttpServletRequest获取参数,为什么传的参数print出来的是null?


你用的是post传递json参数,实际的参数是在requestBody里面,你如果通过request取的话,需要通过从HttpServletRequest的Reader流中获取请求body参数
BufferedReader reader = request.getReader();
StringBuilder builder = new StringBuilder();
String line = reader.readLine();
while(line != null){
builder.append(line);
line = reader.readLine();
}
reader.close();
String reqBody = builder.toString();
然后将这个字符串解析json,再获取到这个值。
不过在spring中一般是定义POJO实体类,对应请求参数字段,然后通过@RequestBody注解绑定参数