在測試Http api時,用Chrome發現報告CORS錯誤。但是在Postman里面可以通過:
Access to XMLHttpRequest at 'http://apis.juhe.cn/simpleWeather/query?city=XXX&key=XXX' from origin 'http://localhost:4200' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
先了解一下什么是CORS:
CORS (Cross-Origin Resource Sharing,跨域資源共享)是一個系統,它由一系列傳輸的HTTP頭組成,這些HTTP頭決定瀏覽器是否阻止前端 JavaScript 代碼獲取跨域請求的響應。
同源安全策略 默認阻止“跨域”獲取資源。但是 CORS 給了web服務器這樣的權限,即服務器可以選擇,允許跨域請求訪問到它們的資源。
下面記錄一下解決方法:
1. 運行chrome時添加參數
chromium-browser --disable-web-security --user-data-dir="[some directory here]"
2. 安裝Chrome插件
安裝完以后在下圖位置打開/關閉CORS封鎖
