Cookie的一些筆記

2021-09-05 12:33:05 字數 1069 閱讀 3848

cookie 餅乾:即乙份資料,由伺服器給客戶端,且儲存在客戶端的乙份很小的資料

在程式中,不同的客戶端會產生許多會話,故而,會話的跟蹤就顯得尤為重要。理論上,乙個客戶端的所有操作都應該屬於同乙個會話,不同使用者的操作與會話不能混淆組合。例如,你購物車內新增了乙個商品,隔了10天,你又新增了乙個商品,那麼,這兩個商品應該都呆在你的購物車內。其他使用者的商品則呆在他們自己的購物車內。這就是會話的跟蹤。

而web應用程式是使用http協議傳輸資料的。http協議是無狀態的(即資料互動完畢,則會話關閉),這就意味著同樣乙個使用者的操作,不在同屬於乙個會話。例如,你10天後新增的商品不會跟你10天前新增的商品處在同乙個購物車內。

因此,要跟蹤會話,確保會話與操作不至於混亂,就必須引入一種機制去彌補http協議的不足,cookie就應運而生。

通過前面的筆記,已經了解到,http協議中請求與響應時候,都是帶有各自的響應頭,體等組團的一堆資訊。

cookie則是這堆資訊中的一部分

在request的時候,瀏覽器將cookie資訊放在http-request headers中。

在response的時候,瀏覽器儲存http-response headers資訊中的cookie資訊。

其實就是每個客戶端通過cookie來給自己設定乙個唯一代表自己的標識,以此達到不同會話中不至於混淆

不要儲存未經加密敏感資訊(安全性)

如果不需要在客戶端訪問,設定httponly=true(安全性)

設定合理的過期時間(傳輸效率)

不要儲存過大的內容(傳輸效率)不要儲存過大的內容(傳輸效率)

不要儲存過多的條目(傳輸效率)不要儲存過多的條目(傳輸效率)

設定合理的domian、path,減少不必要的cookie傳輸(傳輸效率)設定合理的domian、path,減少不必要的cookie傳輸(傳輸效率)

不要儲存非unicode字元(可用性)不要儲存非unicode字元(可用性)

不要儲存不可恢復的資訊(可靠性)不要儲存不可恢復的資訊(可靠性)

(其中包含cookie儲存資訊如何加密的幾種參考方式)

Cookie的一些操作

有關cookie的一些操作。1 取得cookie的相關資訊 cookie cookies request.getcookies string username string password if cookies null 2 將登陸使用者的名和密碼儲存到cookie中 在伺服器端 cookie c...

javascript寫cookie的一些方法

函式 一 寫cookie的函式,將cookie寫入客戶端,通用函式,傳入3個引數即可 cookie名字,值和失效期 函式 寫入cookie function writecookie cookiename,cookievalue,expiry else 沒有設定cookie失效時間 函式 二 取得表單...

對cookie的一些認識

cookie是一小段文字資訊,將資料儲存在客戶端,設計初衷是為了彌補http協議無狀態的不足。客戶端請求伺服器時,如果伺服器需要記錄該使用者的狀態,就使用response向客戶端頒發乙個cookie,客戶端會把cookie儲存起來。當瀏覽器再次訪問該 時,瀏覽器會把請求的 連同該cookie一起提交...