”已阻止跨源請求:同源策略禁止讀取位於 ***** 的遠程資源。(原因:CORS 頭缺少 'Access-Control-Allow-Origin')。“
”已阻止跨源請求:同源策略禁止讀取位於 ******的遠程資源。(原因:CORS 請求失敗)。“
在項目中或者練習中經常遇到ajax請求跨域的問題,除了可以用jsonp的請求模式,並且在后台支持回調的方式以外,還可以通過簡單的配置webconfig文件或者IIS,解決該問題。
一、通過修改配置文件解決CORS跨域問題
在配置文件中的webserver節點中添加如下代碼:
1 <?xml version="1.0" encoding="utf-8"?> 2 <!-- 3 有關如何配置 ASP.NET 應用程序的詳細信息,請訪問 4 http://go.microsoft.com/fwlink/?LinkId=169433 5 --> 6 7 <configuration> 8 <system.web> 9 <compilation debug="true" targetFramework="4.5" /> 10 <httpRuntime targetFramework="4.5" /> 11 </system.web> 12 <system.webServer> 13 <httpProtocol> 14 <customHeaders> 15 <add name="Access-Control-Allow-Origin" value="*"/> 16 <add name="Access-Control-Allow-Headers" value="Content-Type"/> 17 <add name="Access-Control-Allow-Methods" value="GET,POST,PUT,DELETE,OPTIONS"/> 18 </customHeaders> 19 </httpProtocol> 20 </system.webServer> 21 </configuration>
二、通過IIS配置網站解決CORS問題

其中的value值設置為*則表示運行任何地址的跨域請求,也可以設置指定的請求地址。
