webapi介面跨域訪問
阿新 • • 發佈:2019-01-11
js呼叫釋出的webapi存在跨域問題,一直返回405狀態碼,我在後臺的webconfig檔案的<system.webServer> </system.webServer>節點下加了允許所有人訪問
<httpProtocol> <customHeaders> <add name="Access-Control-Allow-Origin" value="*" /> <add name="Access-Control-Max-Age" value="30" /> <add name="Access-Control-Allow-Methods" value="GET,POST,OPTIONS" /> <add name="Access-Control-Allow-Headers" value="Content-Type, Accept" /> </customHeaders> </httpProtocol>
但是還是訪問返回405
解決辦法:把原有的<handlers>節點註釋掉,也就是下面的程式碼要註釋掉
<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>