$ .ajax POST在Internet Explorer中抛出错误,但没有其他浏览器

时间:2012-07-03 19:04:53

标签: jquery ajax json asp.net-mvc-3

您好我正在尝试编写一种方法,将信息发布到另一个域并获得简单的响应。我在Chrome和Firefox中使用此功能,但所有版本的IE都无法正常运行。这是我的代码:

function getCode(email, password, firstname, lastname){
    $.support.cors = true;
    $.ajax({
        type: "POST",
        cache: false,
        url: "http://localhost:61660/Account/TestMemberStatus",
        data: {email:  email, password: password, firstname: firstname, lastname: lastname },
        dataType: "json",
        success: function(result) {
            ContinuePart2(result, email, firstname, lastname);
        },
        error: function(result){
            ContinuePart2("error");
        }
    });
}

我正在使用jQuery 1.7.2,我在IE中收到的错误是“错误:访问被拒绝。\ r \ n”

后端是一个.NET MVC3站点,其中包含一个返回JSON字符串的公开方法。我添加了以下标题:

filterContext.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Origin", "*");
filterContext.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Credentials", "true");

更新:这是一个跨域调用

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

Internet Explorer仅部分支持CORS。从IE10开始,您可能希望获得XHR的完整CORS支持。例如IE8 supports CORS with the XDomainRequest对象是专有的。