跨域—同源策略(经典前端面试题)

什么是跨域

  • 跨域:
    是指浏览器不能执行其它网站的脚本;
    是由浏览器的同源策略造成的;
    是浏览器对JavaScript实施的安全限制;
    那么只要协议、域名、端口有任何一个不同,都会被当做是不同的域;

跨域原理:通过各种方式,避开浏览器的安全限制;

什么是同源策略

  • 同源策略(Same origin policy):是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。

url地址组成:

  1. http协议
  2. 域名/ip地址 123.0.0.1本地回环ip地址
  3. 端口号 :80 相当于服务器大门
  4. 路径 path查询参数/动态参数
  5. 锚点

两个网站是否同源,取决于http协议,域名/ip,端口号是否全部一致

localstorage

遵循同源策略,只要在同源的网址里面,localStorage里的数据可以共享
会一直存在浏览器中,除非主动去销毁(removeItem)

sessionStorage

增删查改的语法与localStorage一样
存储的数据类型也只能是字符串
不支持数据共享,同源页面也不支持
临时存储,当浏览器关闭或者标签页关闭的时候就会被销毁

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容