什么是跨域?
跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对javascript施加的安全限制。
所谓同源是指,域名,协议,端口均相同。只要有任何一个不同,都被当作是不同的域,之间的请求就是跨域操作。
URL | 原因 | 是否允许通信 |
---|---|---|
http://h5.jd.com/dir/zepto.js | 同源 | 允许 |
http://h5.jd.com/dir2/react.js | 同源 | 允许 |
https://h5.jd.com/jquery.js | 协议 | 不允许 |
http://h5.jd.com:8080/vue.js | 端口 | 不允许 |
http://m.jd.com/angular.js | 主机 | 不允许 |
防止跨域
①:利用请求头中的referer进行验证。
②:使用自定义token(请求头)
③:可在请求头中设置自定义属性并验证
–2018-09-19
实现跨域