我正在尝试访问WebAPI(在同一服务器中但使用不同的IP)。它就像IE 10中的魅力一样。但在IE 8中它变得更糟。我已经包含了$ .support.cors = true,还包含了我从中获得的jQuery.XDomainRequest.js https://github.com/MoonScript/jQuery-ajaxTransport-DomainRequest/blob/master/jQuery.XDomainRequest.js
对于GET请求它正在工作,但是对于帖子它抛出错误。我了解到,对于POSt内容类型应该是text / plain。 我试图将我的数据作为纯文本发送,可能是服务器没有正确解析它。 我也尝试了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;
}
答案 0 :(得分:0)
ASP.NET WEB API支持CROS需要额外的库。查看此帖子:CORS support for ASP.NET Web API
在写完这篇文章时修改了你的项目,它会起作用。
提示:当我使用它时,NightBuild Nuget server的两个库。