在WebAPI上启用CORS似乎无法使用Postman

时间:2016-10-20 21:16:16

标签: cors asp.net-web-api2

我正在尝试为特定域启用CORS。我已经按照他们所说的所有内容进行了处理:

https://www.asp.net/web-api/overview/security/enabling-cross-origin-requests-in-web-api

我在WebApiConfig上启用了cors。我在我的控制器类上设置了属性,每个域用逗号分隔。我也尝试实现自己的ICorsPolicyProvider类。当我在Postman上测试代码时,它总是返回值,尽管有一个域不在源列表中作为原点。我注意到返回的标头不包含Access-Control-Allow-Origin标头。我正在使用Microsoft.AspNet.WebApi版本5.2.3。我无法弄清楚我做错了什么。

非常感谢任何和所有帮助。谢谢。

1 个答案:

答案 0 :(得分:1)

客户端(浏览器或邮递员)负责执行CORS。机制是这样的,当JavaScript尝试跨源AJAX调用时,浏览器将检查是否允许这样做。

您的案例中的解决方案:尝试在浏览器中通过JavaScript向控制器发出请求,您应该会看到您期望的行为。

作为Chrome扩展程序,邮递员可以在其来源之外发出请求:https://developer.chrome.com/extensions/xhr