首頁  >  文章  >  後端開發  >  cookie和session有什麼差別? (詳細介紹)

cookie和session有什麼差別? (詳細介紹)

不言
不言轉載
2019-01-12 10:24:013842瀏覽

本篇文章帶給大家的內容是關於cookie和session之間有什麼差別? (詳細介紹),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

Session是另一個記錄客戶狀態的機制,不同的是Cookie保存在客戶端瀏覽器中,而Session則保存在伺服器上。當客戶端瀏覽器存取伺服器的時候,伺服器把客戶端資訊以某種形式記錄在伺服器上。這就是Session。客戶端瀏覽器再次造訪時只需要從該Session中尋找該客戶的狀態就可以了。

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

session原理大白話:當你一次訪問伺服器的時候,伺服器會在記憶體中開闢一塊空間,傳回唯一一把打開該空間的鑰匙,再把這把鑰匙回到瀏覽器。當你第二次訪問的時候瀏覽器會攜帶這把鑰匙到伺服器端打開對應的空間,如果該空間已經銷毀又重新返回開闢一塊新的空間返回新的鑰匙到瀏覽器。

##cookie網站為了辨別用戶身分而儲存在用戶本機上的資料(通常經過加密)只能保存ASCII字符,不能直接存取物件儲存在客戶端,對使用者可見,可以被修改、複製可以設定長期有效,只要為其設定一個特別大的過期時間需要客戶端瀏覽器支援。若瀏覽器停用或不支援cookie,則需使用session及URL位址重寫(把session id直接附在URL路徑後面),可以設定為一切視窗內有效或目前視窗及子視窗有效支援跨網域訪問

#差異

cookie

session

定義

服務端保存的用來追蹤使用者狀態的資料

存取方式不同

能夠存取任何資料類型

隱私權策略不同

#儲存在服務端,對使用者透明,安全性更高

#有效期限不同

有效期較短

瀏覽器支援不同

#只在本次瀏覽器視窗及子視窗內有效

#跨網域支援不同

######不支援跨網域訪問,session僅在它所在的網域內有效###############

以上是cookie和session有什麼差別? (詳細介紹)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:cnblogs.com。如有侵權,請聯絡admin@php.cn刪除