angulerjs調用webapi提示 同源策略已禁止。解決方案如下:
在webapi的web.config文件的system.webserver配置節增加以下配置:
- <httpProtocol>
- <customHeaders>
- <add name="Access-Control-Allow-Origin" value="*" />
- <add name="Access-Control-Allow-Headers" value="*" />
- <add name="Access-Control-Allow-Methods" value="GET, POST, PUT, DELETE" />
- </customHeaders>
- </httpProtocol>
這種方式的好處是簡單,只要在這裏加了這個配置,那麼所有的api都可以按同一種規則支持跨域請求。
注意,設置之後還要檢查web.config文件中是否包含以下設置:
<remove name="OPTIONSVerbHandler" />
如果包含,需要刪掉或者註釋掉。