Cookie與會話
HTTP是無狀態的,這意味著當客戶機從服務器接收頁面並關閉連接時,存儲的任何數據都將被銷燬。Cookies和sessi***是解決這個問題的兩種方法。Cookie是一個非常小的信息片段,由網站存儲在客戶機上,每次請求頁面時都會將其發送回服務器。會話是一種在服務器上存儲信息的方法,而不是在客戶機上存儲信息。
什麼是餅乾?
Netscape在其Netscape Navigator web瀏覽器中引入了Cookie的概念。Cookie是一個非常小的信息片段,由網站存儲在客戶機上,每次請求頁面時都會將其發送回服務器。因為每次都會發送cookies,所以必須保存最少的數據量才能節省帶寬。網站只讀取由它編寫的cookie,從而提供了跨不同頁面存儲信息的安全方法。然而,cookies最初並沒有得到一個好名字,因為有傳言稱cookies可以讀取硬盤上的所有信息。當然,隨著人們意識到餅乾實際上是無害的,這種誤解逐漸消失了,現在它們被高度接受。餅乾有一定的壽命,由其創造者定義。最後,cookie將過期。Cookie通常跟蹤用戶訪問的頻率、訪問的時間、單擊的橫幅、用戶偏好等信息。Cookie通常用於存儲短期所需的信息。如果需要保存較長時間的Cookie信息,程序員必須使用它來保存。但是,如果個人信息確實存儲在cookies中,則需要使用加密來提高安全性。
什麼是會話?
會話是另一種跨頁面存儲信息的方法。但這是在服務器端完成的。會話實際上使用服務器端和客戶端cookie來存儲數據。但是客戶端cookie只存儲對服務器上存儲的相應數據的引用。當用戶訪問網站時,客戶端cookie(帶有參考號)被髮送到服務器,服務器使用這個號碼來加載用戶的數據。服務器端cookie可以存儲大量數據。由於客戶端cookie只存儲參考號,因此可以大大節省帶寬。因為會話數據存儲在服務器中,所以它們的保護要大得多。
Cookie和Sessi***有什麼區別?