`
fogiguiuu
  • 浏览: 31212 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

java cookie p3p 跨域

    博客分类:
  • java
阅读更多

cookie 跨域,什么是跨域呢,为什么需要跨域呢?

 

www.a.com 下有 a.html页面

www.b.com 下有b.html这个地址

1.例如a.html页面在域下,a.html页面中有个img标签<img src="www.b.cm/b.html"/>

当a.html页面打开时,就会访问b.html。这里b.html接受到请求然后向HttpServletResponse   add 名为uid的cookie,这个uid就叫做第三方cookie。在firfox下是支持跨域的,也就是说你用firfox的话这时你浏览器里就有一个domain为b.com的cookie   uid。当访问a.html页面,b.html也就能接收uid这个cookie。 没什么好说的......

在ie下就不行了,ie默认是不允许第三方cookie的,也就是uid这个cookie并没写入。加个p3p的head就可以成功向ie写入第三方cookie了。

response.setHeader("P3P","CP=\"NON DSP COR CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa CONa HISa TELa OTPa OUR UNRa IND UNI COM NAV INT DEM CNT PRE LOC\"");

(ie下查看cookie  \Documents and Settings\{userName}\Local Settings\Temporary Internet Files\   cookie开头的文件,\Documents and Settings\{userName}\Cookies\下的并不即时)

 

2.javax.servlet.http.Cookie中有个 setDomain(String domain)方法,此方法并不能指定不同域。

例如:a.html想写个domain为b.com的cookie是办不到的。

setDomain(...)是用来指定cookie属于同一个域下的子域。

例如:a.html中设定setDomain("bbs.a.com/")是可行的,而setDomain("b.com/")是不可行的。

 

简要理解,欢迎指正。

 

分享到:
评论
2 楼 xiongzhe90 2015-04-29  
学习了
1 楼 wo2hongyan1xiao 2012-07-26  
[flash=200,200][/flash][url][/url][img][/img]
引用
[u][/u][i][/i][b][/b]

相关推荐

    跨域页面访问问题解决.doc

    解决跨域页面访问问题的办法是,在子系统的登录代码中加入 P3P 的认证,即允许第三方读取 cookie,这样 cookie 值才能被浏览器正确的读取并保存。P3P(Platform for Privacy Preferences)是一种隐私保护协议,允许...

    iframe跨域与session失效问题的解决办法

    通过这种方式,可以解决在IE浏览器中由于P3P隐私设置导致的iframe跨域cookie丢失问题,进而解决session失效导致的用户频繁重新登录的问题。这个方法在技术上是可行的,但需要网站管理员操作,确保P3P声明符合实际的...

    java实现可跨浏览器单点登录

    对于Cookie,可以使用P3P(Platform for Privacy Preferences Project)头来跨域设置Cookie。 5. **安全性考虑**:在实现SSO时,必须重视安全问题。包括但不限于:使用HTTPS加密传输,防止中间人攻击;定期刷新票据...

    PHP关于IE下的iframe跨域导致session丢失问题解决方法

    P3P头的`CP`参数表示饼干(Cookie)策略,这里的`ALL ADM DEV PSAi COM OUR OTRo STP IND ONL`是一个特定的策略字符串,告诉浏览器这个网站可以接受第三方的Cookie,从而解决IE在iframe中处理Session的问题。...

    java 转换 IE JESSIONID

    这可能需要在响应头中添加`Set-Cookie`,或者使用`P3P`政策来允许跨域cookie。 3. **手动传递JSESSIONID**: - 当用户在不支持或禁用cookie的环境下,或者在不同浏览器间切换时,JSESSIONID需要通过URL查询参数...

    单点登录实践

    3. **跨域通信**:由于Cookie有同源策略限制,SSO需要处理跨域问题,这可能通过共享Cookie(如P3P协议)或使用JSON Web Tokens (JWT)等方法实现。 4. **协议实现**:例如CAS(Central Authentication Service)、...

Global site tag (gtag.js) - Google Analytics