在web api和jquery中启用cors

时间:2015-08-21 10:44:20

标签: jquery asp.net-web-api

嗨朋友我在移动应用程序上使用另一个域上的服务,当我尝试在web api上发布时出现此错误。 “Access-Control-Allow-Origin”与“http://localhost:port”不匹配

我尝试了一切但仍然出错。在配置文件中添加了配置。

 <customHeaders>
    <add name="Access-Control-Allow-Headers" value="*" />
    <add name="Access-Control-Allow-Origin" value="http://localhost:3391/" >
    <add name="Access-Control-Request-Method" value="POST,GET" />                
 </customHeaders>
  $.ajax({
            url: "http://localhost:4656/values",
            crossDomain: true,
            data: data,
            type: "post",
            xhrFields: {
                withCredentials: true
            },
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            beforeSend: function (xhr) {
                xhr.setRequestHeader("Access-Control-Allow-Origin", "*");
            },
            headers: {
                "Access-Control-Allow-Origin": 'http://localhost:3391/',
                "Access-Control-Allow-Headers": "*"
            },
            success: function () {

            }
        })

尝试一切但失败请事先提供解决方案。

1 个答案:

答案 0 :(得分:0)

最好创建一个CORS策略来做到这一点,请阅读官方文档来创建和使用它:http://www.asp.net/web-api/overview/security/enabling-cross-origin-requests-in-web-api,也没有用*(是一个安全漏洞),添加值得信赖的域名