使用p3p跨域設置Cookie

有些時候不能將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"); 

?>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章