$.ajax 中的contentType与dataType的区别

时间: 作者:admin 浏览:
var json = { name: "小明", age: 20 }
$.ajax({
    type: "post",
    contentType: "application/json; charset=utf-8",//传参类型
    dataType: "json",//返回值类型
    url: "ajax/getData",
    data:JSON.stringify(json),
    success: function(data){
        console.log(data);
    },
    error : function(msg) {
        console.log(msg);
    }
});

区别:

  • contentType: 发送信息至服务器时内容编码类型,简单说就是data值(传参)的数据类型是什么,默认值是: “application/x-www-form-urlencoded”,data就传常用的json对象:

    var json = { name: "小明", age: 20 }
    

    但在restful接口中contentType常用到的是:application/json,这时候data值的类型只能是字符串,所以要将json对象转成json字符串:

    var json = JSON.stringify({ name: "小明", age: 20 });
    

    在调试js时候通过chrome的F12或firefox的firebug查看请求参数时,尤其请注意header下面的数据显示的是Form Data还是Request Payload。

  • dataType:告诉服务器,我想要返回什么类型的数据,就是success方法返回值的类型,除了常见的json、XML,还可以指定 html、jsonp、script或者text

微信公众号
微信公众号:
  • 前端全栈之路(微信群)
前端QQ交流群
前端QQ交流群:
  • 794324979
  • 734802480(已满)

更多文章

栏目文章


Copyright © 2014-2023 seozhijia.net 版权所有-粤ICP备13087626号-4