解决Google Chrome CORS*

在测试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插件

https://chrome.google.com/webstore/detail/allow-cors-access-control/lhobafahddgcelffkeicbaginigeejlf?hl=en 安装完以后在下图位置打开/关闭CORS* 解决Google Chrome CORS*

 

 

上一篇:浏览器跨域常用解决方案总结


下一篇:跨域的两种方案以及实现(JSONP,CORS)