session與cookie

因爲算是總結,儘量用自己的白話去敘述,也可能比較簡短。

cookie

一般在清空瀏覽器的瀏覽記錄裏會有選項讓你確認是否刪除cookie,從這點可以方便的分析出cookie是儲存在我們自己電腦上的,也就是存儲在客戶端的。
cookie有什麼用呢?舉個很常見的例子,比如你天天都要登OJ刷幾道題,有時候瀏覽器會讓你確認是否保存cookie,當你確認後,後來再訪問OJ時,就不用再輸賬號密碼了,就可以直接登錄進去了。
cookie是以文本格式保存在客戶端的,當你下次再訪問服務端時,瀏覽器會將儲存在你本地上的該網址的cookie交給服務端,服務端便可以接收到這些cookie信息。
cookie是可以設置過期時間的,一般來說不設置的話,cookie保存在內存裏,當你關閉瀏覽器後,當前該cookie便消失了。設置過期時間,cookie就保存在磁盤裏,直到時間過期爲止,否則下次訪問服務端時cookie還會因爲未到過期時間發送到服務端。
cookie也不是非常安全的,因爲cookie容易被其他人截獲。故cookie更適合存儲不隱私的數據。

session

一般用戶在訪問天貓等網站後,進行購買跳轉頁面,服務端還是能夠知道你是誰,不會因爲併發訪問而亂,他是一個會話,儲存在服務端的,用戶與服務端建立連接後,服務端總是能夠唯一標識各個用戶。
因爲session保存在服務端,故只是暫時的建立聯繫,如果用戶關閉網站,那麼session就會關閉,網站也就不能訪問該session了,每個session都有sessionid作爲唯一標識來區分各個用戶。
每次服務端和客戶端建立連接時,就會請求創建一個session,若sessionid已有,則說明創建過,就會直接用這個sessionid,沒有的話就會新創一個。
因爲session是保存在服務端的,服務端如果保存太多session也會非常佔資源。session相對cookie來說較爲安全,cookie容易被其他人截獲,若他人利用你個人的cookie去提交給服務器,就會冒充你個人去登錄網站,而session一直保存在服務端,相對來說更安全。故session可以存儲相對來說較隱私的數據。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章