前端发送axios代码:
created() {
const _this = this
axios.get('http://localhost:8181/book/findAll')
.then(function(res) {
_this.books = res.data
})
}
访问前端页面的url是 http://localhost:8080
后端接口的url是http://localhost:8181/book/findAll
端口不一样,按理说这算是跨域了,我的Chrome出了啥问题?(黑人问号.jpg)
火狐:
阻止了跨域访问,没有拿到数据
Chrome:
跨域访问没有被阻止,拿到了数据
get请求被浏览器跨域的同源策略请求机制拦截,chrome浏览器会拦截跨域请求,但是只是拦截返回结果,请求还是会被发送到服务器。请求因为跨域被拦截后,会改成 OPTIONS 请求送达服务器,这样服务器就可以知道有人在请求。你可以使用post处理数据,这样谷歌也会报错,说跨域请求被拦截了,需要配置跨域请求或者跨域代理
请问,后端有没有处理跨域访问呢?
chrome能跨域请求不好吗?
可能是你chrome 中设置解除了跨域限制。比如你chrome.exe的快捷方式中加了启动参数
chrome.exe --args --disable-web-security --user-data-dir