问题:由于浏览器的同源策略,即要求“协议、域名、端口”必须相同。也是浏览器的一种安全机制,导致平时开发程序的时候总会遇到跨域问题,比如请求API请求,或者canvas合成图片的时候。一般会出现类似于下面的报错
XMLHttpRequest cannot load http://localhost:8080/#/. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access. The response had HTTP status code 405.
常用解决方式:
1.后端加response.setHeader("Access-Control-Allow-Origin", "*")
2.nginx配置代理服务器
3.在终端运行 “open -n /Applications/Google\ Chrome.app/ --args --disable-web-security --user-data-dir=/Users/lizhiqiang/Documents/chrome” “/Applications/Google\ Chrome.app ”是你的chrome 软件地址,“/Users/lizhiqiang/Documents/chrome” 是你随便创建的一个文件夹当浏览器出现如下图片就成功了。