分享
查看: 4390|回复: 0

[分享] 跨域问题

[复制链接]

跨域问题

发表于 2022-8-29 10:56:28 来自 分享 阅读模式 倒序浏览
zzv_icon4390 zzr_icon0 查看全部
常见跨域场景
1.)同一域名下的不同文件或路径,允许访问。
http://www.domain.com/a.css
http://www.domain.com/b.css
http://www.domain.com/lab/c.css
2.)同一域名下的不同端口, 不允许访问。
http://www.domain.com:8000/a.css
http://www.domain.com/b.css
3.)同一域名下的不同协议, 不允许访问。
http://www.domain.com/a.css
https://www.domain.com/b.css
4.)同一ip地址下的不同域名之间,不允许访问。
http://www.domain.com/a.css
http://192.167.4.17/b.css
5.) 不同域名之间不允许访问。
http://www.domain1.com/a.css
http://www.domain2.com/b.css
报错:No Access-Control-Allow-Origin header is present on the requested resource
原因:不能请求不在同一域名下的资源文件(IP地址+端口号),因为浏览器的同源策略限制了此类请求。
什么是同源策略?
同源策略/SOP(Same origin policy)是一种约定,由Netscape公司1995年引入浏览器,它 是浏览器最核心也最基本的安全功能,如果缺少了同源策略,浏览器很容易受到XSS、CSFR等攻击。所谓同源是指"协议+域名+端口"三者相同,即便两个不同的域名指向同一个ip地址,也非同源。
同源策略限制以下几种行为:
1.) Cookie、LocalStorage 和 IndexDB 无法读取
2.) DOM 和 Js对象无法获得
3.) AJAX 请求不能发送

avatar
游客~
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

130700ppkpl8x3t7tt1b1t