$.ajax 与 $.post 的区别,以及$.post的bug

前端之家收集整理的这篇文章主要介绍了$.ajax 与 $.post 的区别,以及$.post的bug前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

先来看两个方法

$.ajax({
    url: url,data: params,type: 'post',dataType: 'json',success: function(d) {
    },error: function(e) {
    }
});
$.post(url,params,function(d) {
},function(e) {
});

这都能看懂,没有什么问题
正常的使用,不会有什么问题,
那什么是不正常的使用呢?

上传文件

$.ajax({
    url: url,data: formdata,contentType: false,//必须false才会自动加上正确的Content-Type
    /**
     * 必须false才会避开jQuery对 formdata 的默认处理
     * XMLHttpRequest会对 formdata 进行正确的处理
     */
    processData: false,error: function(e) {
    }
});

请求地址有302重定向(同域下,没有跨域)

这种情况下,$.post的回调函数就没有执行,$.ajax正常执行

jQuery版本:2.2

猜你在找的Ajax相关文章