使用xhrFields的CORS异步ajax调用无法在所有浏览器中运行(IE8)

时间:2015-03-20 19:39:44

标签: jquery ajax cross-domain

我正在跨域url进行ajax调用,并且在IE8中使用下面的代码失败。它在IE8中失败,因为没有定义对象或属性的错误,并且给出了未定义的响应。 我已设置,$ .support.cors = true;     $阿贾克斯({
                        async:false,                         cache:false,                         网址:“http://test/price”,                         crossDomain:true,                         类型:“POST”,                         dataType:“json”,                         数据:jsonData,
                         xhrFields:{                                  withCredentials:true                          },                         成功:功能(响应){                           }                          错误:function(xhr,exception){                                } 上面的代码在firefox和chrome浏览器中完美运行。为了使它在IE8中工作,我删除了以下部分代码 xhrFields:{withCredentials:true},

现在它可以在IE8,IE8 +浏览器中运行但在chrome和firefox中失败并抱怨为“401 - 未经授权:由于凭据无效而拒绝访问。您无权使用您提供的凭据查看此目录或页面“

我甚至尝试使用下面的代码强制在ajax调用的标题部分,但它是没用的。 标题:{
    “内容类型”:“应用程序/ x WWW的形式进行了urlencoded”,     “Access-Control-Allow-Origin”:“*”,     “访问控制允许的凭据”:“真”,     “Access-Control-Allow-Headers”:“Content-Type,Origin,Authorization,X-Requested-With,Accept”,     “访问控制允许 - 方法”:“POST” }

我在一些帖子中尝试了所有建议,但都没有奏效 有人可以帮我修复IE8 +,chrome和firefox浏览器。

0 个答案:

没有答案