专业编程基础技术教程

网站首页 > 基础教程 正文

P3P实现跨域读写Cookie 跨域访问cookie

ccvgpt 2024-10-22 10:37:53 基础教程 9 ℃

先简单了解什么是P3P?

P3P是一种被称为个人隐私安全平台项目(the Platform for Privacy Preferences)的标准,能够保护在线隐私权,使Internet冲浪者可以选择在浏览网页时,是否被第三方收集并利用自己的个人信息。如果一个站点不遵守P3P标准的话,那么有关它的Cookies将被自动拒绝,并且P3P还能够自动识破多种Cookies的嵌入方式。p3p是由全球资讯联盟网所开发的。

P3P实现跨域读写Cookie 跨域访问cookie

有些项目中我们可能会有跨城读写cookie的需求?这个时候我们可以借用p3p来实现。

浏览器第三方 cookie的 限制,所谓第三方 cookie,就是说你访问网页 A,却接收到域名 B 的 cookie 设定指令。这可能是由于网页 A 请求或链接了 B 的网页。

假设我们有两个域名xxx.com、yyy.com:

在xxx.com的首页中嵌入一个iframe页,src地址为 http://yyy.com/index.php页面,然后刷新yyy.com的首页获取Cookie。

asp.net设置p3p的方法:

HttpContext.Current.Response.AddHeader("p3p", "CP=\""IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\""");

PHP设置p3p的方法:

header('P3P:CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"');

JSP设置p3p的方法:

response.setHeader("P3P","CP='IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT'")

php写cookie示例:

<?php

header('P3P:CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"');

setcookie("test", "cookie value", time()+3600, "/", ".yyy.com");

?>

Tags:

最近发表
标签列表