成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

cookie

tanglijun / 2235人閱讀

摘要:是指瀏覽器儲(chǔ)存的少量數(shù)據(jù),同時(shí)也是與具體頁面有關(guān)的。需要設(shè)置有效期。擁有作用域,其作用域是通過文檔源和文檔路徑設(shè)置的。默認(rèn)情況下,和創(chuàng)建其的頁面有關(guān)。并對(duì)同目錄和其子目錄的其他頁面可見。的另外一個(gè)屬性為其為布爾值,用來表明通過哪種網(wǎng)絡(luò)傳遞。

cookie
cookie是指web瀏覽器儲(chǔ)存的少量數(shù)據(jù),同時(shí)也是與具體頁面有關(guān)的。
cookie會(huì)自動(dòng)在web服務(wù)器和web瀏覽器中傳輸。

cookie 是用來保存狀態(tài)的。即用戶登錄,一個(gè)網(wǎng)站如何判斷用戶登錄的時(shí)候,會(huì)直接通過從客戶端接收到的cookie來獲取的。
cookie 屬性,有效期和作用域

除了名(name)和值(value),cokie持續(xù)有效時(shí)間很短,只能持續(xù)在web瀏覽器的會(huì)話期間。一旦用戶關(guān)閉瀏覽器,用戶保存的數(shù)據(jù)就全部丟失。cookie需要設(shè)置有效期。即設(shè)置max-age屬性,通過設(shè)置其屬性完成對(duì)cookie有效期的設(shè)置。
設(shè)置了有效期以后,cookie數(shù)據(jù)會(huì)儲(chǔ)存在一個(gè)文件中,直到過了指定的有效期才會(huì)刪除文件。
cookie擁有作用域,其作用域是通過文檔源和文檔路徑設(shè)置的。默認(rèn)情況下,cookie和創(chuàng)建其的web頁面有關(guān)。并對(duì)同目錄和其子目錄的其他web頁面可見。對(duì)父級(jí)目錄不可見。
一個(gè)栗子,當(dāng)用戶在頁面輸入了其電子郵件地址,需要保存下來,這個(gè)時(shí)候希望整個(gè)網(wǎng)站都使用其電子郵件地址,這個(gè)時(shí)候,通過設(shè)置cookie中的path屬性即可實(shí)現(xiàn)作用域?yàn)槿俊?br>如果將路徑設(shè)置為/ 即讓cookie和localStorage擁有同樣的作用域。同時(shí)當(dāng)其請(qǐng)求該站點(diǎn)上的任何一個(gè)web頁面的時(shí)候,瀏覽器都必須將cookie的名字和值傳遞給服務(wù)器。

這里需要注意一點(diǎn)的是,如果一個(gè)web頁面,想要讀取其他頁面的cookie,只需要隨便加載一個(gè)頁面,并使用iframe標(biāo)簽,即可讀取對(duì)應(yīng)文檔的cookie,此操作受到同源的限制。

如果需要子域名之間能共享cookie此時(shí)需要設(shè)置cookie的domain 如果沒有為一個(gè)cookie設(shè)置域?qū)傩?,那么domain屬性的默認(rèn)值為當(dāng)前web服務(wù)器的主機(jī)名。
cookie的另外一個(gè)屬性為secure 其為布爾值,用來表明通過哪種網(wǎng)絡(luò)傳遞。cookie默認(rèn)是不安全的傳遞,即可以通過http傳遞,一旦設(shè)置為true的時(shí)候,必須通過https進(jìn)行傳遞。

總結(jié)
名稱 含義
Name 儲(chǔ)存的名稱
Value
Domain 用于域的共享,實(shí)現(xiàn)子域的互通
Path 設(shè)置cookie的路徑
secure 表明cookie是否以不安全的方式傳遞
保存cookie

cookie為鍵值對(duì)。
即需要按照以下的字符串進(jìn)行設(shè)置

name = value

如下所示

document.cookie = "version=" + encodeURIComponent(document.lastModified);

由于cookie中儲(chǔ)存的不允許包含分號(hào),逗號(hào),空白符,所以在儲(chǔ)存前使用encodeURIComponent()核心函數(shù)進(jìn)行編碼,解碼的時(shí)候使用encodeURIComponent()函數(shù)解碼

和POST中的請(qǐng)求體類似。

如果設(shè)置天數(shù),需要按照以下的字符串進(jìn)行設(shè)置

name = value; max-age = seconds

下面的函數(shù)是設(shè)置一個(gè)cookie的值

// 以名/值的形式儲(chǔ)存cookie
// 同時(shí)采用JavaScript核心函數(shù)encodeURIComponent()函數(shù)進(jìn)行對(duì)值的編碼
// daysToLive的值為天
function setcookie(name, value, daysToLive) {
    var  cookie = name + "=" + encodeURIComponent(value);
    // 如果傳入的天數(shù)為數(shù)字格式的
    if (typeof daysToLive === "number") 
        cookie +=  "; max-age=" + (daysToLive*60*60*24);    // 由于上一個(gè)已經(jīng)是一條,需要使用; 來作為結(jié)束
    document.cookie = cookie;    // 將字符串傳入cookie
}

同樣的如果想要 繼續(xù)設(shè)置cookie的值,還需要繼續(xù)在后面加上值

; path = path
; omainn = domain
; secure

如果要?jiǎng)h除cookie,需要設(shè)置同樣名字的即可完成。

讀取cookie

因?yàn)樽x取的是一個(gè)字符串,所以需要使用split()方法將cookie的值中的名值對(duì)進(jìn)行分離。使用JSON.parse()將其轉(zhuǎn)化為JSON對(duì)象

// 將docuemnt.cookie 的值以名值對(duì)組成的一個(gè)對(duì)象返回
// 假設(shè)儲(chǔ)存cookie的值的時(shí)候是采用encodeURIComponent()函數(shù)進(jìn)行編碼的
function getcookie() {
    var cookie = {};    // 初始化要保存的對(duì)象
    var all = document.cookie;    // 在一個(gè)字符串中獲取cookie的值
    if (all === "") 
        return cookie;    // 如果返回的是一個(gè)空對(duì)象
    var list = all.split(";");    // 進(jìn)行分離
    for(var i = 0; i < list.length; i++) {
        var cookie = list[i];    
        var p = cookie.indexOf("=");    // 查詢第一個(gè)=
        var name = cookie.substring(0, p);    // 獲取cookie的名字
        var value = cookie.substring(p+1);    // 獲取cookie對(duì)應(yīng)的值
        value = decodeURIComponent(value);    // 對(duì)其值進(jìn)行解碼
        cookie[name] = value;    // 將名/值對(duì)儲(chǔ)存到對(duì)象中
    }
    return cookie;    // 返回cookie
}
cookie的局限性

對(duì)cookie數(shù)量,大小有限制。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/98027.html

相關(guān)文章

  • Servlet第五篇【介紹會(huì)話技術(shù)、Cookie的API、詳解、應(yīng)用】

    摘要:保存中文上面我們的例子保存的是英文字符,下面我們來看下保存中文字符會(huì)怎么樣。出異常了中文屬于字符,英文數(shù)據(jù)字符,中文占個(gè)字符或者個(gè)字符,英文占個(gè)字符。如果為,則表示刪除該。的值規(guī)定為域名的隱私安全機(jī)制決定是不可跨域名的。 什么是會(huì)話技術(shù) 基本概念: 指用戶開一個(gè)瀏覽器,訪問一個(gè)網(wǎng)站,只要不關(guān)閉該瀏覽器,不管該用戶點(diǎn)擊多少個(gè)超鏈接,訪問多少資源,直到用戶關(guān)閉瀏覽器,整個(gè)這個(gè)過程我們稱為一...

    binaryTree 評(píng)論0 收藏0
  • Cookic

    摘要:追蹤記錄和分析用戶行為。屬性返回一個(gè)布爾值,表示瀏覽器是否打開功能不同瀏覽器對(duì)數(shù)量和大小的限制,是不一樣的。請(qǐng)求的發(fā)送瀏覽器向服務(wù)器發(fā)送請(qǐng)求時(shí),每個(gè)請(qǐng)求都會(huì)帶上相應(yīng)的。屬性必須為絕對(duì)路徑,默認(rèn)為當(dāng)前路徑。屬性值必須是當(dāng)前發(fā)送的域名的一部分。 概述Cookie 與 HTTP 協(xié)議HTTP 回應(yīng):Cookie 的生成HTTP 請(qǐng)求:Cookie 的發(fā)送Cookie 的屬性Expires,M...

    phoenixsky 評(píng)論0 收藏0
  • 客戶端數(shù)據(jù)存儲(chǔ)----Cookie From 《高程3》

    摘要:首先先來一段總結(jié)用于本地?cái)?shù)據(jù)存儲(chǔ),出現(xiàn)在服務(wù)器和瀏覽器交互的響應(yīng)頭部和請(qǐng)求頭部中,受到單域名下的數(shù)量單個(gè)大小性能安全限制。子技術(shù)的出現(xiàn)緩解了單域名下的數(shù)量限制,關(guān)于子有一整套工具函數(shù)可以使用。 前言 本篇主要介紹Cookie技術(shù)的讀書總結(jié),但是我認(rèn)為邏輯上最好會(huì)和Web Storage技術(shù)放在一起進(jìn)行對(duì)比,因此后續(xù)會(huì)再總結(jié)一篇關(guān)于WEB存儲(chǔ)的姊妹總結(jié),敬請(qǐng)期待。 首先先來一段總結(jié):Co...

    馬忠志 評(píng)論0 收藏0
  • 客戶端數(shù)據(jù)存儲(chǔ)----Cookie From 《高程3》

    摘要:首先先來一段總結(jié)用于本地?cái)?shù)據(jù)存儲(chǔ),出現(xiàn)在服務(wù)器和瀏覽器交互的響應(yīng)頭部和請(qǐng)求頭部中,受到單域名下的數(shù)量單個(gè)大小性能安全限制。子技術(shù)的出現(xiàn)緩解了單域名下的數(shù)量限制,關(guān)于子有一整套工具函數(shù)可以使用。 前言 本篇主要介紹Cookie技術(shù)的讀書總結(jié),但是我認(rèn)為邏輯上最好會(huì)和Web Storage技術(shù)放在一起進(jìn)行對(duì)比,因此后續(xù)會(huì)再總結(jié)一篇關(guān)于WEB存儲(chǔ)的姊妹總結(jié),敬請(qǐng)期待。 首先先來一段總結(jié):Co...

    since1986 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<