ajax--跨域产生的原因
协议,域名,端口只要有一个不同即为跨域。
1. 浏览器限制
很多情况下,有的人会认为跨域是服务器端造成的,实际上不是。
如图:
发送get1()请求,控制台打印出了跨域报错,但是实际上这个请求状态码为200,请求是成功到达服务器并且返回数据。所以可以判断服务器端是ok的,但是浏览器检测出了我们跨域,然后报跨域安全问题。
2. 服务器端设置跨域
3. 发送了XHR请求
我们使用<img src="">避开发送XHR请求:
可以看到,同样的请求,换成非XHR就不会报跨域问题。
如图: