当前位置:首页 > 开发 > Web前端 > 前端 > 正文

如何跨域获取Cookie

发表于: 2014-06-23   作者:darrenzhu   来源:转载   浏览:
摘要: cookie可以跨子域访问,如果用户信息保存在qq.com的cookie中,那么对于pay.qq.com, cb.qq.com是可以直接取到该cookie的。 但是如果qq.com.cn,qq.cn都要拿qq.com中的cookie时,cookie的存、放的操作该怎么办? 1)cookie不能跨根域,但js可以跨根域,在a.com登录后,用js的方式将cookie值传给 a.com.
cookie可以跨子域访问,如果用户信息保存在qq.com的cookie中,那么对于pay.qq.com, cb.qq.com是可以直接取到该cookie的。
但是如果qq.com.cn,qq.cn都要拿qq.com中的cookie时,cookie的存、放的操作该怎么办?


1)cookie不能跨根域,但js可以跨根域,在a.com登录后,用js的方式将cookie值传给
a.com.cn 形如a.com?cookie=XXX 在a.com.cn 中再保存一次该域名的cookie,这样的问题是可能存在不同的cookie 域包含同一个cookie值


2)直接跨根域读写是不可行的,浏览器不允许,比如qq.com要访问qq.cn的cookie,只能是qq.cn服务器自己读取cookie然后对外开放才行,比如提供qq.cn/getqqcnCookie.do服务,返回qq.cn的cookie信息,然后qq.com发出getqqcnCookie的请求给qq.cn,当然这个请求必须用JsonP的方式,下文“淘宝如何跨域获取Cookie分析”解释了这一方式。


3)采用SSO(Single Sign On)单点登录方式。

参考文章
淘宝如何跨域获取Cookie分析
http://developer.51cto.com/art/201104/255729.htm

JS跨域设置和取Cookie
http://developer.51cto.com/art/201104/256793.htm

【原创】ASP.NET 安全认证(四)
——巧妙实现 Form 表单认证跨站点、跨服务器的单点登录(Single Sign On)
http://blog.csdn.net/sweetsoft/article/details/592408

如何跨域获取Cookie

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号