直白些说,协议、域名、端口号有一个不同就算是跨域
因为浏览器出于安全考虑,有同源策略。也就是说,如果协议、域名或者端口有一个不同就是跨域,Ajax 请求会失败。
主要是用来防止 CSRF 攻击的。简单点说,CSRF 攻击是利用用户的登录态发起恶意请求。
服务器端对于CORS的支持,是通过设置Access-Control-Allow-Origin来进行的。
推荐一篇不错的博客说明
https://segmentfault.com/a/1190000011145364
解决方案:
jsonp(只能使用get方法访问)
nginx反向代理
后端配置cors
网友评论