0

我正在尝试访问 WebAPI(在同一服务器中但 IP 不同)。它在 IE 10 中就像一个魅力。但在 IE 8 中情况变得更糟。我已经包含了 $.support.cors=true 并且还包含了我从 https://github.com/MoonScript/jQuery-ajaxTransport-DomainRequest/blob/master/jQuery.XDomainRequest.js获得的 jQuery.XDomainRequest.js

对于 GET 请求,它正在工作,但对于发布它的抛出错误。我了解到对于 POST 内容类型应该是文本/纯文本。我试图将我的数据作为纯文本发送,可能服务器没有正确解析它。我也尝试了 jsonp ,但没有奏效,我正在放下我的 webapi 调用。请建议我如何才能使它正常工作。非常感谢 。

function Authenticate() {

 var UserInfoRequest = {
        Email: $("#txtEmail").val(), SubDomain: subDomainName
    };


    //UserInfoRequest ="Email="+$("#txtEmail").val()+"&SubDomain="+subDomainName;


    $.ajax({
        url: defaultAPIurl + "Login/UserExistOrDualRole"  ,
        type: "POST",
        dataType: 'json',
    data:   UserInfoRequest ,

        success: function (data) {


            //do something 

        },
        error: function (data) {
            Showerror();
            return;

        }
    });





    return false;
}
4

1 回答 1

0

ASP.NET WEB API 支持 CROS 需要额外的库。查看这篇文章:CORS 对 ASP.NET Web API的支持

在写这篇文章时修改了您的项目,它将起作用。

提示:当我使用它时,这两个库在他们的NightBuild Nuget 服务器上。

于 2013-08-30T03:35:57.557 回答