Jquery AJAX(json)跨域请求和ASP.NET MVC

WHI*_*LOR 3 asp.net-mvc jquery json

对我来说似乎是一个挨打的主题,但我找不到答案.=(我从localhost:555应用程序使jquery ajax请求localhost:666

    $.ajax({
            url: "http://localhost:666/request",
            dataType: 'json',
            timeout: 5000,
            success:...
Run Code Online (Sandbox Code Playgroud)

我有铬:

XMLHttpRequest无法加载http:// localhost:666/request.原产地的http://本地主机:555不被访问控制允许来源允许的.

这个问题的解决方案是什么?

Mua*_*han 8

您可以通过创建XMLHttpRequest对象或XDomainRequest对象在您的网页中启动跨域请求.最终用户的Web浏览器将通过发送带有origin值的" Origin "头来从域服务器请求数据.如果服务器以" Access-Control-Allow-Origin:*| Origin " 响应,则允许我们访问数据; 否则响应将是未经授权的请求.

protected void Application_BeginRequest(object sender, EventArgs e)
{
    HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", "*");

    // HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", "http://AllowedDomain.com");
}
Run Code Online (Sandbox Code Playgroud)

这里有一篇文章:跨源请求和ASP.NET MVC