P3P Header解决Cookie跨域的问题


Posted in Javascript onMarch 12, 2013

P3P

P3P是一?被????人?私安全平??目(the Platform for Privary Preferences)的??剩??虮Wo在??私?啵??nternet?浪者可以??裨?g????r,是否被第三方收集?K利用自己的??人信息。如果一??站?不遵守P3P??实脑?,那?有?它的Cookies?⒈蛔?泳芙^,?K且P3P?能?蜃?幼R破多?Cookies的嵌入方式。P3P是由全球???盟?所??的。

例子

??面存在iframe?r,想要?取iframe框架?面的cookie,就要在iframe相????B?面?面添加P3P Header信息,否?t在IE下?取不到。因??E有安全策略,限制?面不保存第三方cookie(注:?前????面?榈谝环?ookie,第三方cookie就是?前??以外的其他??的cookie)。

<?php 
//http://www.a.com/a_setcookie.php 文件内容:
setcookie("test", "testval", time()+3600, "/", ".a.com");
//http://www.a.com/a_getcookie.php 文件内容:
var_dump($_COOKIE);
/*-----------------------------------------------------------------------
http://www.b.com/b_setcookie.php 文件内容:
<iframe src="http://www.a.com/a_setcookie.php?id=www.b.com"></iframe>
通过浏览器访问: http://www.b.com/b_setcookie.php
http://www.a.com/a_getcookie.php在访问 b.com域后,我们并没有在 a.com域发现设置上cookie值。
将http://www.a.com/a_setcookie.php文件内容改为如下:
--------------------------------------------------------------------------*/
header('P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"');
setcookie("test","testval", time()+3600, "/", ".a.com");
//再次访问:http://www.b.com/b_setcookie.php
//http://www.a.com/a_getcookie.php在访问b.com域后,设置了a.com域的cookie值。

JS使用P3P协议

xmlhttp.setRequestHeader( "P3P" , 'CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"' );
Javascript 相关文章推荐
如何确保JavaScript的执行顺序 之jQuery.html深度分析
Mar 03 Javascript
新浪微博字数统计 textarea字数统计实现代码
Aug 28 Javascript
腾讯UED 漂亮的提示信息效果代码
Sep 12 Javascript
js返回上一页并刷新代码整理
Dec 21 Javascript
JS二维数组的定义说明
Mar 03 Javascript
ie9 提示'console' 未定义问题的解决方法
Mar 20 Javascript
JavaScript跨域方法汇总
Oct 16 Javascript
基于Bootstrap的Metronic框架实现页面链接收藏夹功能
Aug 29 Javascript
js阻止默认右键的下拉菜单方法
Jan 02 Javascript
Angular事件之不同组件间传递数据的方法
Nov 15 Javascript
javascript中正则表达式语法详解
Aug 07 Javascript
vue+elementUI(el-upload)图片压缩,默认同比例压缩操作
Aug 10 Javascript
解决JS浮点数运算出现Bug的方法
Mar 12 #Javascript
JS实现悬浮移动窗口(悬浮广告)的特效
Mar 12 #Javascript
js弹出模式对话框,并接收回传值的方法
Mar 12 #Javascript
js 获取class的元素的方法 以及创建方法getElementsByClassName
Mar 11 #Javascript
.net,js捕捉文本框回车键事件的小例子(兼容多浏览器)
Mar 11 #Javascript
JS中Iframe之间传值的方法
Mar 11 #Javascript
JS中Iframe之间传值及子页面与父页面应用
Mar 11 #Javascript
You might like
PHP生成二维码的两个方法和实例
2014/07/01 PHP
PHP实现的带超时功能get_headers函数
2015/02/10 PHP
ajax调用返回php接口返回json数据的方法(必看篇)
2017/05/05 PHP
Laravel 集成微信用户登录和绑定的实现
2019/12/27 PHP
javascript 解析url的search方法
2010/02/09 Javascript
JavaScript在IE和Firefox浏览器下的7个差异兼容写法小结
2010/06/18 Javascript
基于Jquery的表格隔行换色,移动换色,点击换色插件
2010/12/22 Javascript
两个listbox实现选项的添加删除和搜索
2013/03/01 Javascript
一行命令搞定node.js 版本升级
2014/07/20 Javascript
node.js中使用socket.io的方法
2014/12/15 Javascript
iScroll中事件点击触发两次解决方案
2015/03/11 Javascript
详解AngularJS 模态对话框
2016/04/07 Javascript
jQuery Mobile页面返回不需要重新get
2016/04/26 Javascript
浅谈js键盘事件全面控制
2016/12/01 Javascript
Vue.js组件tabs实现选项卡切换效果
2016/12/01 Javascript
微信小程序Redux绑定实例详解
2017/06/07 Javascript
JS 实现分页打印功能
2018/05/16 Javascript
ES6 Symbol在对象中的作用实例分析
2020/06/06 Javascript
[49:41]NB vs NAVI Supermajor小组赛A组 BO3 第一场 6.2
2018/06/03 DOTA
python实现查询苹果手机维修进度
2015/03/16 Python
如何利用python制作时间戳转换工具详解
2018/09/12 Python
Python中一个for循环循环多个变量的示例
2019/07/16 Python
Jupyter Notebook输出矢量图实例
2020/04/14 Python
Python新手如何进行闭包时绑定变量操作
2020/05/29 Python
Pandas的Apply函数具体使用
2020/07/21 Python
移动端开发HTML5页面点击按钮后出现闪烁或黑色背景的解决办法
2018/09/19 HTML / CSS
加拿大最大的钻石商店:Peoples Jewellers
2018/01/01 全球购物
英国领先的运动营养品牌:Protein Dynamix
2018/01/02 全球购物
美国婚礼装饰和活动用品批发供应商:Event Decor Direct
2018/10/12 全球购物
如何将一个描述日期或日期/时间的字符串转换为一个Date对象
2015/10/13 面试题
出纳员岗位职责风险
2014/03/06 职场文书
乡镇综治宣传月活动总结
2014/07/02 职场文书
2015年社区宣传工作总结
2015/05/20 职场文书
婚礼男方父母答谢词
2015/09/29 职场文书
matplotlib画混淆矩阵与正确率曲线的实例代码
2021/06/01 Python
MySQL详解进行JDBC编程与增删改查方法
2022/06/16 MySQL