【发布时间】:2014-12-17 20:02:18
【问题描述】:
我需要为我的 Web API 启用 CORS,但目前无法升级到 Framework 4.5。 (我知道 System.Web.Http.Cors.EnableCorsAttribute。)
我尝试将以下内容添加到我的 Web.config 以查看它是否有效,但没有:
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Access-Control-Allow-Origin" value="*"/>
</customHeaders>
</httpProtocol>
我还尝试使用 System.Web.Http.Filters.ActionFilterAttribute 手动将 Access-Control-Allow-Origin 标头设置为“*”(基于这篇文章:Add custom header to all responses in Web API) - 但那没有也不能解决,因为请求在进入操作过滤之前被拒绝。
所以我现在有点卡住了。感谢任何帮助。
编辑:结果
<add name="Access-Control-Allow-Origin" value="*"/>
一直是答案,我之前测试它时一定做错了什么。但是这个解决方案意味着所有操作都启用了 CORS(现在可以)。
【问题讨论】:
-
@ArindamNayak 该线程中接受的答案似乎需要.NET Framework 4.5。
-
做一件事,按照那里回答中提到的步骤,你可能需要搜索 .net 4 nuget 包才能使其工作。注意:我已经在那里回答了,所以我不在这里回答,我的意思是不要复制它。
-
stackoverflow.com/questions/22143378/… - 这表示 WEB API 1 中不存在 CORS。- 也添加了我的答案!
-
@ArindamNayak 谢谢,我会调查的。
标签: c# asp.net-mvc asp.net-web-api cors