具有域名的COR不起作用

时间:2015-09-24 18:25:57

标签: asp.net-web-api cors

我有一个Web API应用程序。我的Angular Web UI调用Web API。 我修改了应用程序以进行如下所示的http调用

var urlString = SomeSettings.apiServiceBaseUri + 'api/Test';
var getData = function (urlString) {----}

我也在Web Api配置中启用了Cors,如下所示。

 //Enable Cors
        //Right now adding URLs for Dev and QA
        var cors = new EnableCorsAttribute("http://DevAPIURL.com, http://QAAPIURL.com", "*", "*");
//            var cors = new EnableCorsAttribute("*", "*", "*");
        cors.SupportsCredentials = true;

        config.EnableCors(cors);

使用此设置,如果我 调试 ,我将收到" XMLHttpRequest:网络错误0x80070005的应用程序,拒绝访问。"错误。我也没有在fiddler中看到access-control-allow-origin标头

但是如果我使用*而不是域名,我就可以工作了。

这还有什么问题。

1 个答案:

答案 0 :(得分:1)

我得到了这个工作。另一个线程中的某个人也提出了建议,但我忽略了这一点。这是解决方案

我安装了Microsoft.Owin.Cors,然后在startup.Auth.cs类中,我将以下行添加为ConfigureAuth方法中的第2行。install-package Microsoft.Owin.Cors

多数民众赞成。

我从WebWPIConfig.cs类中删除了配置。

测试身份验证和API控制器方法都有效。