IE下iframe中session丢失

本文探讨了一个在IE浏览器下iframe无法正确读取session的问题,通过修改隐私配置和利用P3P协议,成功解决了该问题。同时,文章还提供了一种人为在HTTP响应头中添加P3P信息的解决方案,以确保安全性和兼容性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

做了一个带iframe的页面,firefox下一切正常,到了ie下面就报错。

debug的结果,发现是iframe调用的java程序读取不到session中的值。

研究了很久,不知道原因,最后在一位同事的指点下,通过修改ie的隐私配置,总算可以了。

配置的修改方法是:工具->选项->隐私->高级 在高级隐私策略设置中,将选择框都选上。


可是问题又来了,我的网页要发布,我总不可能要求全部用户都去按我的要求设定自己的浏览器吧!

所以这个问题一定要解决。

经过在百度du了很久之后,终于猜测和一个叫p3p的协议有关。

百度百科中p3p的说明:http://baike.baidu.com/view/1332745.htm

哦,原来是因为ie认为不安全,所以不能保存cookie及session。

原因找到了,那就要看怎么解决了:

那就人为在发送的包头中,加入个信息,说明自己是安全的就好了!

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\"");

参考博客:http://wangzi6hao.iteye.com/blog/531524


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值