session與cookie對比
相同:都是儲存使用者狀態的機制,都會過期
不相同:1.session在伺服器端儲存使用者資訊,cookie在客戶端儲存使用者資訊
2.session儲存的是object型別,cookie儲存的是string型別
3.session隨會話的結束而將其儲存的資料銷毀,cookie可以長期儲存在客戶端
4.session儲存重要資訊,cookie儲存不重要的資訊。
session生命週期:
建立:客戶端第一次訪問jsp或servlet建立乙個sessionid。客戶端每次請求都將sessionid帶過,服務端進行驗證。
2.當前會話頁面沒有全部關閉
3.本次會話所有頁面關閉後,再重新訪問某個jsp或者servlet將會建立新的會話。
銷毀:1.呼叫session.invalidate()
2.過期(tomcat中設定超時)
3.伺服器重啟
cookie
儲存在客戶端
典型應用1.判斷使用者是否已經登入
2.購物車的處理
作用:對特定物件的追蹤
儲存使用者瀏覽記錄與習慣
簡化登入
安全風險:容易洩露使用者的資訊
建立cookie
cookie newcookie = new cookie(string key,object value);
寫入cookie
response.addcookie(newcookie);
讀取cookie
cookie cookies = request.getcookies()
cookie與session的關聯
前提 cookie沒有被禁用。當用瀏覽器登入到某 伺服器時,先找對應的cookie檔案,當首次訪問是當然沒有cookie檔案,所以在請求頭部中沒有cookie的內容,即在請求頭部中沒有類似cookie jsessionid 的內容,這時當請求到達伺服器後,伺服器看請求頭中沒有jsessionid值,...
session與cookie的區別
讓我們用幾個例子來描述一下cookie和session機制之間的區別與聯絡。筆者曾經常去的一家咖啡店有喝5杯咖啡免費贈一杯咖啡的優惠,然而一次性消費5杯咖啡的機會微乎其微,這時就需要某種方式來紀錄某位顧客的消費數量。想象一下其實也無外乎下面的幾種方案 1 該店的店員很厲害,能記住每位顧客的消費數量,...
session與cookie的區別
1 session儲存在伺服器,客戶端不知道其中的資訊 cookie儲存在客戶端,伺服器能夠知道其中的資訊。2 session中儲存的是物件,cookie中儲存的是字串。3 session不能區分路徑,同乙個使用者在訪問乙個 期間,所有的session在任何乙個地方都可以訪問到。而cookie中如果...