Cookie機制和Session機制

2022-07-24 03:30:21 字數 1283 閱讀 7412

1. cookie

1. cookie 是在http協議下,伺服器或指令碼可以維護客戶工作站上資訊的一種方式。cookie 是由 web伺服器儲存在使用者瀏覽器(客戶端)上的小文字檔案(內容通常經過加密),它可以包含有關使用者的資訊。無論何時使用者鏈結到伺服器,web站點都可以訪問cookie 資訊,可以看作是瀏覽器快取.

2. cookie的使用是由瀏覽器按照一定的原則在後台自動傳送給伺服器。瀏覽器檢查所有儲存的cookie,如果某個cookie所宣告的作用範圍大於等於將要請求的資源所在的位置,則把該cookie附在請求資源的http請求頭上傳送給伺服器.

2. session

1. 代表伺服器與瀏覽器的一次會話過程,指從乙個瀏覽器視窗開啟到關閉的這個期間.也可以用於指一類用來在客戶端與伺服器之間保持狀態的解決方案.

2. session機制是一種服務端的機制,伺服器使用一種類似雜湊表的結構來儲存資訊。

3. 當程式需要為某個客戶端的請求建立乙個session的時候,伺服器首先檢查這個客戶端裡的請求裡是否已包含了乙個session標識--sessionid,如果已經包含乙個sessionid,則說明以前已經為此客戶端建立過session,伺服器就按照sessionid把這個session檢索出來使用(檢索不到,可能會新建乙個),如果客戶端請求不包含sessionid,則為此客戶端建立乙個session並且聲稱乙個與此session相關聯的sessionid,sessionid的值應該是乙個既不會重複,又不容易被找到規律以仿造的字串(伺服器會自動建立),這個sessionid將被在本次響應中返回給客戶端儲存。

3. cookie和session之間的區別

1.cookie資料存放在客戶的瀏覽器(本地),session資料放在伺服器上

2.cookie不如session安全,別人可以分析存放在本地的cookie並進行cookie欺騙,所以出於安全性的考慮應當使用session

3.session會在一定時間內儲存在伺服器上。當訪問增多,會占用較多的伺服器資源,所以出於效能考慮則應當使用cookie

4. 單個cookie儲存的資料不能超過4k,很多瀏覽器都限制乙個站點最多儲存20個cookie.實際上為了效能考慮,不論是cookie還是session,其中的資訊都應當短小精悍

session因為是儲存在伺服器上,所以不支援跨域的訪問

4. 使用cookie和session的具體場景

一般來說,登陸驗證資訊,客戶的私人資訊,如姓名,**等,應該放在session中.cookie則用於使用者登陸**時的自動登陸以及類似"購物車"的處理.使用cookie儲存資訊時最好通過加密形式來儲存資料,同時是否儲存登陸資訊,需要由使用者自行選擇

web 快取機制 cookie與session

1.cookie cookie技術是客戶端的解決方案,cookie是由伺服器發給客戶端的特殊資訊,而這些資訊以文字檔案的方式存放在客戶端,然後客戶端每次向伺服器傳送請求的時候都會帶上這些特殊的資訊。web應用程式是使用http協議傳輸資料的。http協議是無狀態的協議。一旦資料交換完畢,客戶端與伺服...

Python中cookie和session的異同點

cookie和session的異同點 共同點 1.cookie和session都是用來儲存資料的 2.cookie和session都可以設定有效時間 不同點 1.cookie是儲存在瀏覽器客戶端,session是儲存在服務端 2.session相對cookie來說更更安全 3.session依賴於c...

Flask中的cookie和session淺知

cookie技術的必要性 cookie的實現原理 cookie時用來將使用者資訊儲存在客戶端的技術,使用者資訊會被存放於客戶端的計算機中。cookie儲存到客戶端之後,當使用者再次通過瀏覽器發起對伺服器的請求的時候,瀏覽器就會自動帶著此 相關的cookie資訊來請求資料庫。而cookie資訊裡面儲存...