浏览器同源协议 笔记

同源策略是浏览器为了保护用户信息安全而实施的一种安全机制,限制了非同源的网页之间的交互,包括Cookie、LocalStorage和IndexDB的访问、DOM操作以及AJAX请求。当一级域名相同但二级域名不同的情况下,可以通过设置`document.domain`共享Cookie。对于其他资源的跨域通信,可以使用PostMessage API。此外,服务器设置Cookie的domain为一级域名也能实现跨二级、三级域名的Cookie共享。然而,跨域的ifame窗口和window.open方法打开的窗口无法直接获取对方的DOM。
摘要由CSDN通过智能技术生成

同源指的是:

 协议相同

域名相同

端口相同

举例来说 http://www.baidu.com/丛发民的博客/ 这个网址,协议是http://,

域名是www.baidu.com,端口是80(默认端口可省略)

http://www.baidu.com/丛发民的博客/ c 同源

若想同源 这三项就不可改变

 

同源政策的目的是保证用户信息的安全,防止恶意的网站窃取数据。

若非同源,有三种行为受到限制

A cookie localStorage和indexDB 无法获取

B DOM无法获取

C AJAX请求不能发送

虽然这些限制是必要的,但是有时很不方便,合理的用途也受到影响,如何规避呢

如网页的一级域名相同,二级域名不同,浏览器允许通过设置 document.domin共享cookie

举例:A网页是http://www.baidu1.com/a.html (百度是情怀)

B网页是http://www.baidu2.com/b.html,只要设置相同的document.domin,两个网页就可以共享cookie

(思考)

A网页

document.domain='baidu.com'

document.cookie="test1=hello"

B网页

document.domain='baidu.com'

var firstCookie=document.cookie

这种方法只适用于 Cookie和ifame窗口,LocalStorage和indexDB无法通过这种方法,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值