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

Posted lsw9

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于后台接收参数为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/

  欢迎骚扰  

 
 

以上是关于关于后台接收参数为null的问题之ajax--contentType的主要内容,如果未能解决你的问题,请参考以下文章

AJAX设置content-type为:application/json提交请求,后台接收参数实现

AJAX设置content-type为:application/json提交请求,后台接收参数实现

post提交参数内容过大后台接收不了

ajax上传数据到后台,后台接收为null?

c# 后台GETPOSTPUTDELETE传输发送json数据

关于angular $http 中的data传递参数(json字符串)后端没法接收的问题