Web前端学习笔记之前端跨域知识总结

相信每一个前端er对于跨域这两个字都不会陌生,在实际项目中应用也是比较多的。但跨域方法的多种多样实在让人目不暇接。老规矩,碰到这种情况,就只能自己总结一篇博客,作为记录。

 

0x01 什么是跨域

跨域一词从字面意思看,就是跨域名嘛,但实际上跨域的范围绝对不止那么狭隘。具体概念如下:只要协议、域名、端口有任何一个不同,都被当作是不同的域。之所以会产生跨域这个问题呢,其实也很容易想明白,要是随便引用外部文件,不同标签下的页面引用类似的彼此的文件,浏览器很容易懵逼的,安全也得不到保障了就。什么事,都是安全第一嘛。但在安全限制的同时也给注入iframe或是ajax应用上带来了不少麻烦。所以我们要通过一些方法使本域的js能够操作其他域的页面对象或者使其他域的js能操作本域的页面对象(iframe之间)。下面是具体的跨域情况详解:

URL 说明 是否允许通信 同一域名下 允许 同一域名下不同文件夹 允许 :8000/a.js 同一域名,不同端口 不允许 https://www.a.com/b.js 同一域名,不同协议 不允许 域名和域名对应ip 不允许 主域相同,子域不同 不允许(cookie这种情况下也不允许访问) 同一域名,不同二级域名(同上) 不允许(cookie这种情况下也不允许访问) 不同域名 不允许

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsfxxd.html