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实现Windows任务管理器的代码
Mar 27 Javascript
简易js代码实现计算器操作
Apr 15 Javascript
Javascript表格翻页效果的具体实现
Oct 05 Javascript
js自定义鼠标右键的实现原理及源码
Jun 23 Javascript
使用jquery动态加载js文件的方法
Dec 24 Javascript
javascript实现相同事件名称,不同命名空间的调用方法
Jun 26 Javascript
jQuery操作cookie
Aug 08 Javascript
基于JavaScript实现本地图片预览
Feb 08 Javascript
jQuery中的for循环var与let的区别
Apr 21 jQuery
vue项目环境变量配置的实现方法
Oct 12 Javascript
swiper实现异形轮播效果
Nov 28 Javascript
Vue使用路由钩子拦截器beforeEach和afterEach监听路由
Nov 16 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
分页显示Oracle数据库记录的类之一
2006/10/09 PHP
php addslashes和mysql_real_escape_string
2010/01/24 PHP
一个简单php扩展介绍与开发教程
2010/08/19 PHP
详解PHP实现执行定时任务
2015/12/21 PHP
深入解析WordPress中加载模板的get_template_part函数
2016/01/11 PHP
php实现的mongoDB单例模式操作类
2018/01/20 PHP
如何取得中文输入的真实长度?
2006/06/24 Javascript
js函数使用技巧之 setTimeout(function(){},0)
2009/02/09 Javascript
javascript 简单抽屉效果的实现代码
2010/03/09 Javascript
JavaScript 事件系统
2010/07/22 Javascript
利用javascript打开模态对话框(示例代码)
2014/01/11 Javascript
jQuery中prop()方法用法实例
2015/01/05 Javascript
JavaScript学习心得之概述
2015/01/20 Javascript
JavaScript包装对象使用详解
2015/07/09 Javascript
JavaScript如何实现在文本框(密码框)输入提示语
2015/12/25 Javascript
原生JavaScript实现动态省市县三级联动下拉框菜单实例代码
2016/02/03 Javascript
jquery遍历json对象集合详解
2016/05/18 Javascript
JavaScript数组操作详解
2017/02/04 Javascript
深入理解javascript的getTime()方法
2017/02/16 Javascript
微信小程序获取手机号授权用户登录功能
2017/11/09 Javascript
vue通过style或者class改变样式的实例代码
2018/10/30 Javascript
如何解决日期函数new Date()浏览器兼容性问题
2019/09/11 Javascript
js实现坦克移动小游戏
2019/10/28 Javascript
使用vue-cli3+typescript的项目模板创建工程的教程
2020/02/28 Javascript
Python pass详细介绍及实例代码
2016/11/24 Python
django 使用全局搜索功能的实例详解
2019/07/18 Python
python如何基于redis实现ip代理池
2020/01/17 Python
深入了解NumPy 高级索引
2020/07/24 Python
Python+pyftpdlib实现局域网文件互传
2020/08/24 Python
植村秀美国官网:Shu Uemura美国
2019/03/19 全球购物
Python使用openpyxl复制整张sheet
2021/03/24 Python
自主招生自荐书
2013/11/29 职场文书
电脑租赁公司创业计划书
2014/01/08 职场文书
汽车检测与维修专业求职信
2014/07/04 职场文书
县委班子四风对照检查材料思想汇报
2014/09/29 职场文书
考试作弊检讨书
2015/01/27 职场文书