关于后台接收参数为null的问题之ajax--contentType

  今天小编遇到一个关于后台接收参数为null的问题之ajax--contentType ?
答:
ajax方法中的参数:
contentType:发送至服务器时内容的编码类型,一般默认:application/x-www-form-urlencoded(适应大多数的场合)
dataType:预期服务器返回的数据类型
 
有时候前台ajax向后台传数据的时候,能够进到后台,但是后台显示接受的参数为null,如果ajax没有问题,这个时候就要考虑后台在接收参数的时候使用的是什么注解。(@RequestParam还是@RequestBody)
[java]  view plain  copy
 
  1. public HttpResponseEntity selectByCollege(@RequestParam Map<String,Object> collegeName) {  
使用@RequestParam时:(推荐这个)
contentType:"application/x-www-form-urlencoded"
data:{'college',college}
使用@RequestParam,可以不用写contentType,
application/x-www-form-urlencoded是contentType的默认值
使用@RequestBody时:
 接收的是json字符串格式的数据,
 需要将contentType写成:'application/json',
 data:Json.Stringly(da)(将对象变成字符串)
[javascript]  view plain  copy
 
  1. let da = {'state':state};  
[javascript]  view plain  copy
 
  1. $.ajax({  
  2.             type: "POST",  
  3.             url: httpUrl + "/insertInfo",  
  4.             dataType: 'json',  
  5.           <span style="color:#cc0000;">  data: JSON.stringify(da),  
  6.             contentType: "application/json",</span>  
  7.             success: function (result) {  
  8.                 console.log(result);  
  9.                 $('#ModalInfo').modal('hide');  
  10.                
  11.             },  
  12.             error: function () {  
  13.                 console.log('错误')  
  14.             }  
  15.         })  
 
这样就可以解决后台接不到参数的问题啦!!!!
 

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

伟大人nice

E-mail :[email protected]

QQ :602091999

Cell-phone number :15800666248 

http://www.cnblogs.com/lsw9/

  欢迎骚扰  

 
 

猜你喜欢

转载自www.cnblogs.com/lsw9/p/9099559.html