亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

cookie在javascript中的使用技巧以及隱私在服務器端的設置

 更新時間:2012年12月03日 17:04:43   作者:  
cookie在javascript中的使用技巧,需要的朋友可以參考下

讀取cookie字符串方法:

復制代碼 代碼如下:

alert(document.cookie); 

一個網(wǎng)站的cookie字符串包含了該站點域名下的所有cookie(javascript 可訪問的,不包括 httponly 的cookie ),多個cookie之間用分號和一個空格隔開,最多一般是 20個或50個,例如,包含2個cookie的字符串格式為

復制代碼 代碼如下:

document.cookie = "key1=value1; key2=value2"

一個cookie字符串最長為4k,超出個數(shù)限制或長度限制時將返回空值, cookie 個數(shù)超出限制時,會造成另外一些 cookie 丟失,按規(guī)范,丟失的應該是 最近、最少使用的,但是瀏覽器的實現(xiàn)并不完全遵循這個規(guī)范。

設置一個cookie的方法:

復制代碼 代碼如下:

document.cookie="key=value;expires=date;path=/;domain=xxx.com;secure";

要設置多個cookie 只要反復使用 document.cookie = XXX 即可,會自動和其他cookie拼接成一個cookie字符串。

如果要讀取某個cookie的值,只能通過解析cookie字符串來得到。

下面是設置cookie時的幾個參數(shù)

1、名和值:key 為 cookie名稱,value為cookie值

2、過期時間:expires用于設置過期時間,為格林威治字符串格式,如 

復制代碼 代碼如下:

expires = new Date('2011-12-30').toUTCString(); //"Fri, 30 Dec 2011 00:00:00 GMT"

如果沒有設置過期時間,cookie將在瀏覽器關閉時失效。

 

3、所屬路勁:網(wǎng)站某張網(wǎng)頁中的腳本所設置的cookie默認情況下只能供該網(wǎng)頁所在文件夾及其子文件夾中的網(wǎng)頁訪問,如 http://chabaoo.cn/aa/1.html 所設置的cookie 不能被 http://chabaoo.cn/bb/2.html 訪問,更多的時候都希望一個cookie能被本站所有網(wǎng)頁訪問,這就需要設置path屬性, path=/ 表示該cookie的所屬路勁是網(wǎng)站根目錄,這樣本站所有網(wǎng)頁都能訪問。

4、所屬域名:cookie無法跨域訪問,一般情況下,cookie僅供本站使用,如果想在多個網(wǎng)站下共享,那么共享cookie的網(wǎng)站必須擁有同一個主域名,通過設置 domain屬性來實現(xiàn)。比如,如果想讓 chabaoo.cn 和 bbs.jb51.net這兩個二級域名下的網(wǎng)站共享cookie,在設置cookie時需要設置domain=jb51.net

5、加密傳輸:如果一個cookie帶有secure屬性,那么cookie在傳輸?shù)椒掌鞯倪^程中將使用加密數(shù)據(jù)的方式傳輸。

 

 

cookie字符串編碼:

cookie字符串中不能包含空格,分號,逗號等特殊符號,如果可能包含這些符號,可以使用encodeURIComponent()函數(shù)將 cookie 的值進行編碼,讀取 cookie 的值時再使用decodeURIComponent()函數(shù)把值進行轉(zhuǎn)換回來,如 document.cookie="key="+encodeURIComponent(value);

  

在服務器設置 cookie 并聲明其私密性(secure 及 httponly):

有時候為安全,你可能需要限制一些 cookie 的訪問

secure : 該 cookie 僅供 https 安全連接使用

httponly : cookie 僅供 http 傳輸過程中使用,javascript 不能訪問該 cookie

例如,在PHP 中使用內(nèi)置函數(shù)setcookie() 設置一個具有私密性限制的 cookie

setcookie("UserIDCookie","123456",time()+60*30,'/','mytest.com',false,true);

其中第六個參數(shù) 表示是否僅供 https 連接使用,第 七個參數(shù) true 表示是否為 httponly

 

跨域請求及第三方 cookie ,以及 P3P(個人隱私保護策略):

瀏覽器的隱私設置(或者內(nèi)容設置,chrome 在高級設置--內(nèi)容設置 選項)中,設置禁止使用第三方 cookie 時,跨域請求(包括 iframe ,img ,javascript 文件等請求)無法發(fā)送屬于該域的 cookie .

例如, 通過 iframe 引用一個跨域的 頁面 http://chabaoo.cn/index.html ,即使瀏覽器中保存了屬于 other.com 域名下的某個名為 otherLoginFrag 的cookie  ,在 iframe 中請求 該頁面時, otherLoginFrag 并不會隨請求一起發(fā)往 www.other.com 的服務器。

第三方 cookie 限制在不同的瀏覽器中可能略有不同,比如, safari 在禁用 第三方 cookie 時,from 表單的提交也只有 post 方式才能提交 cookie .

如果在希望在瀏覽器禁用 第三方cookie 時仍能發(fā)送跨域請求的 cookie ,就需要在跨域的服務器中使用 P3P 響應頭預先聲明允許發(fā)送的 cookie.

復制代碼 代碼如下:

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

相關文章

最新評論