使用p3p跨域设置Cookie

简介: 有些时候不能将url上的参数传来传去,比如与调用某开放平台上的接口,这时候可能需要借助Cookie来进行处理了,但这里可能又涉及到跨域的问题。   如果浏览器开启了对Cookie的支持,按照Cookie RFC,它应该具有: 1、允许设置至少300个Cookie; 2、每个域允许至少设置20...

有些时候不能将url上的参数传来传去,比如与调用某开放平台上的接口,这时候可能需要借助Cookie来进行处理了,但这里可能又涉及到跨域的问题。

 

如果浏览器开启了对Cookie的支持,按照Cookie RFC,它应该具有:

1、允许设置至少300个Cookie;

2、每个域允许至少设置20个Cookie(IE7/8-50个、FF-50个、Opera-30个);

3、每个Cookie至少允许设置4095字节(Opera-4096字节、ff、safari-4097字节)

 

使用的测试例子是调用iframe,假设有两个域名a.com、b.com,在a.com的首页中嵌入一个iframe页,src地址为 http://b.com/setCookie.php页面,然后刷新b.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'")

 

ColdFusion设置p3p的方法:

<cfheader name="P3P" value="CP='IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT'" />

 

<?php

date_default_timezone_set("Asia/Shanghai");

header("P3P: CP=CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR");

setcookie("cookieTest", "xxx".Rand(0, 1000), time() + 3600, "", "b.com");

?>

 

更多详情,推荐阅读

关于P3P简洁策略,以及浏览器的支持情况

Cookie,Ifrmae与p3p的那点事儿

目录
相关文章
|
15天前
|
前端开发
解决前端ajax跨域请求不携带cookie信息JSESSIONID的问题
解决前端ajax跨域请求不携带cookie信息JSESSIONID的问题
|
6月前
|
存储 开发框架 负载均衡
什么是浏览器 cookies 里的 JSessionID?
什么是浏览器 cookies 里的 JSessionID?
94 0
什么是浏览器 cookies 里的 JSessionID?
|
7天前
|
Web App开发
允许浏览器cookie策略处理
允许浏览器cookie策略处理
11 0
|
9月前
|
Web App开发
【cookie处理】79chrome浏览器 -允许浏览器cookie策略处理
【cookie处理】79chrome浏览器 -允许浏览器cookie策略处理
|
6月前
|
存储 JavaScript 前端开发
什么是 cookie 的 httponly 属性
什么是 cookie 的 httponly 属性
62 0
|
8月前
|
JSON 缓存 安全
跨域时怎么处理 cookie?
跨域时怎么处理 cookie?
|
Web App开发 JavaScript 前端开发
【跨域】一篇文章彻底解决跨域设置cookie问题!
之前做项目的时候发现后端传过来的 SetCookie 不能正常在浏览器中使用。是因为谷歌浏览器新版本Chrome 80将Cookie的SameSite属性默认值由None变为Lax。接下来带大家解决该问题。
2546 0
|
存储 Web App开发 前端开发
浏览器同源策略问题 - Cookie访问限制
对应cookie来说,浏览器的同源策略将会限制不同源间的访问,对于跨站和跨域来说对访问cookie的影响也是不同的。同站请求,对于使用HTTPS协议的API,浏览器会存储cookie,不论`samesite`的值;对于使用HTTP协议的API,浏览器会存储`samesite`的值为`Lax`和`Strict`的cookie。跨站请求,对于HTTPS协议的API返回的cookie,如果设置了属性:`secure; samesite=none`,则浏览器会存储cookie,XHR请求也会带上目标域的cookie。
446 0
后台跨域(实现基本的跨域请求)
后台跨域(实现基本的跨域请求)
114 0

热门文章

最新文章