我已经阅读了很多关于在我的Web API应用程序中启用CORS的内容。
如果我在我的localhost(使用IIS Express)中运行应用程序,它可以运行。我得到标题响应Access-Control-Allow-Origin只能在WebAPI中启用一个来源GET或POST。但是当我使用IIS 7.5将应用程序部署到我们的测试服务器时。我能够从任何来源进行GET和POST。
我的代码如下所示:
在全球范围内启用CORS:
var origin = "http://someorigin:81";
var corsAttrs = new EnableCorsAttribute(origin, "*", "GET,POST");
config.EnableCors(corsAttrs);
在我的WebConfig中,我添加了以下配置:
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<remove name="OPTIONSVerbHandler" />
<remove name="TRACEVerbHandler" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
我重新启动了IIS,但网站也没有成功。我也尝试过 this solution ,但没有成功。
我的请求如何
Host: http://someorigin:81
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:44.0) Gecko/20100101 Firefox/44.0
Accept: application/json, text/plain, */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Authorization: Bearer ***Token in here***
Referer: http://someorigin:81/site/
Connection: keep-alive
Cache-Control: max-age=0
如果我遗失了某些内容,请告诉我,或者我还能做些其他事情来完成这项工作。