cookie與session的概念與區別


會話(Session)跟蹤是Web程序中常用的技術,用來跟蹤用戶的整個會話。常用的會話跟蹤技術是Cookie與Session。Cookie通過在客戶端記錄信息確定用戶身份Session通過在服務器端記錄信息確定用戶身份

一、什么是Cookie

  Cookie意為“甜餅”,是由W3C組織提出,最早由Netscape社區發展的一種機制。目前Cookie已經成為標准,所有的主流瀏覽器如IE、Netscape、Firefox、Opera等都支持Cookie。

  由於HTTP是一種無狀態的協議,服務器單從網絡連接上無從知道客戶身份。怎么辦呢?就給客戶端們頒發一個通行證吧,每人一個,無論誰訪問都必須攜帶自己通行證。這樣服務器就能從通行證上確認客戶身份了。這就是Cookie的工作原理

  Cookie實際上是一小段的文本信息。客戶端請求服務器,如果服務器需要記錄該用戶狀態,就使用response向客戶端瀏覽器頒發一個Cookie。客戶端瀏覽器會把Cookie保存起來。當瀏覽器再請求該網站時,瀏覽器把請求的網址連同該Cookie一同提交給服務器。服務器檢查該Cookie,以此來辨認用戶狀態。服務器還可以根據需要修改Cookie的內容。

二、什么是Session

  Session是另一種記錄客戶狀態的機制,不同的是Cookie保存在客戶端瀏覽器中,而Session保存在服務器上。客戶端瀏覽器訪問服務器的時候,服務器把客戶端信息以某種形式記錄在服務器上。這就是Session。客戶端瀏覽器再次訪問時只需要從該Session中查找該客戶的狀態就可以了。

  如果說Cookie機制是通過檢查客戶身上的“通行證”來確定客戶身份的話,那么Session機制就是通過檢查服務器上的“客戶明細表”來確認客戶身份。Session相當於程序在服務器上建立的一份客戶檔案,客戶來訪的時候只需要查詢客戶檔案表就可以了。

三、cookie與session兩者的區別

1、數據存放位置不同:

cookie數據存放在客戶的瀏覽器上,session數據放在服務器上。

2、安全程度不同:

cookie不是很安全,別人可以分析存放在本地的COOKIE並進行COOKIE欺騙,考慮到安全應當使用session。

3、性能使用程度不同:

session會在一定時間內保存在服務器上。當訪問增多,會比較占用你服務器的性能,考慮到減輕服務器性能方面,應當使用cookie。

4、數據存儲大小不同:

單個cookie保存的數據不能超過4K,很多瀏覽器都限制一個站點最多保存20個cookie,而session則存儲與服務端,瀏覽器對其沒有限制。

 

5、會話機制不同

session會話機制:

      session會話機制是一種服務器端機制,它使用類似於哈希表(可能還有哈希表)的結構來保存信息。

cookies會話機制:

      cookie是服務器存儲在本地計算機上的小塊文本,並隨每個請求發送到同一服務器。 Web服務器使用HTTP標頭將cookie發送到客戶端。在客戶端終端,瀏覽器解析cookie並將其保存為本地文件,該文件自動將來自同一服務器的任何請求綁定到這些cookie。

 

 

 

來源:百度百科

          https://www.cnblogs.com/l199616j/p/11195667.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM