@RequestParam注解

编程

由于现在最常用的前后端数据传递格式为JSON,所以在此只讨论http请求中RequestHeader中Content-Type= application/json; charset=UTF-8 和         Content-Type= application/x-www-form-urlencoded; charset=UTF-8 的两种情况,其中application/x-www-form-urlencoded为ajax请求和form表单请求数据的默认格式。

1.form表单提交

form的enctype有如下几种格式,默认格式为application/x-www-form-urlencoded,此时不论form表单为get还是post请求,@RequestParam()都可以取得数据

2.ajax提交

ajax不论是get还是post请求,@RequestParam()可以获取application/x-www-form-urlencoded格式的数据,但不能获取application/json格式的数据

当ajax为post请求,数据格式为application/json,@RequestParam()获取不到数据,但不报错

当ajax为get请求,数据格式为application/json,前端报错

注:当ajax请求的Content-Type 设为application/json时,一定要把传输的数据用JSON.stringify()装换成JSON格式,否则会出现问题

总结:@RequestParam()注解可以接收application/x-www-form-urlencoded格式的form表单,ajax的提交数据,但是不能接收JSON数据格式的数据

以上是 @RequestParam注解 的全部内容, 来源链接: utcz.com/z/515803.html

回到顶部