跨域名页面之间可以共享cookie吗?
在a.com登录后,获取token存到cookie,如何在b.com页面中拿到这个cookie?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
在a.com登录后,获取token存到cookie,如何在b.com页面中拿到这个cookie?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(5)
需要服务端支持,使用CORS,设置请求头的Access-Control-Allow-Origin
可以先使用 document.cookie 获取到 a.com 的cookie保存到localstorage,b.com再读取localstorage的cookie
从安全角度来说,这是一种授权行为,一般需要一定的再认证处理。这个再认证一般需要由B站发起到A站。
默认情况下,当前域下的cookie只能被当前域下的页面访问。
通过JavaScript设置cookie的doamin属性为一个恰当值即可实现跨域效果。
1.只有根域名相同的不同源的cookie才有可能实现跨域访问,当前根域名不同不能实现跨域。
域名b.baidu.com获取域名a.baidu.com存储的cookie,涉及到跨域,给cookie设置domain属性即可。
document.cookie=
`"name=value;path=path;domain=baidu.com"`domain属性规定cookie的跨域范围,可以实现cookie被baidu.com或其子域名访问。
path默认为其根目录,path=/
转自:https://www.cnblogs.com/xmyd/p/11555214.html
如果 a 网站跟 b 网站你都能控制那就简单多了呀
特定页面接收参数,如从 a 里面打开 b.com/token?token=* 然后存 token 到 localStorage 或者 sessionStorage, b.com 通过监听 storage 变化获取 token