web會話管理基礎

2021-06-27 12:04:39 字數 1736 閱讀 2548

會話要解決的問題:每個使用者在使用瀏覽器與伺服器進行會話的過程中,不可避免各自會產生一些資料,程式要想辦法為每乙個使用者儲存這些資料,這就是會話要解決的問題。

解決會話問題的兩種技術:

cookie:cookie是客戶端技術,程式把每乙個使用者的資料以cookie的形式寫給使用者各自的瀏覽器,當使用者使用瀏覽器再次訪問伺服器中的web資源時,就會帶著各自的資料

這樣web資源處理的就是使用者各自的資料。

* 一般瀏覽器對乙個完整僅支援20個cookie,所以**合計支援300個cookie,而且cookie大小不能超過4kb,且不能存中文資料。

*domain+path+name 唯一確定乙個cookie

常用api:public cookie(string name, string value);

setvalue() 、getvalue()

setmaxage()、getmaxage()    單位:秒 (預設情況下,cookie被儲存在瀏覽器執行緒中,瀏覽器關閉cookie小時,若想設定cookie長期有效,可以為cookie制定

maxage,此時cookie就會被儲存在瀏覽器快取中)

setpath() 、 getpath()

setdomain()、getdomain()

getname() 

httpsession:session是伺服器端技術,利用這個技術,伺服器在執行時可以為每乙個使用者的瀏覽器建立乙個獨享的httpsession物件,由於session為使用者瀏覽器獨享,

所以使用者在訪問伺服器的web資源時,可以把各自的資料放在各自的session中,當使用者再去訪問伺服器中的web資源時,其他web資源再從各自的session中取

出資料為使用者服務。

session以基於cookie的伺服器端會話技術:

httpsession物件的狀態轉換:

注:在編寫bean的時候要注意實現serializable介面,以防止bean物件在被放入session  的情況下,改sesion物件被持久化的時候報錯。

Web會話管理

基於token的管理 重新整理安全問題 web應用通常使用的是http請求,但是http是無狀態的,一次請求結束,連線就會自動斷開,伺服器只能知道每個請求的 位址,可是這對會話的管理毫無意義。根本無法對使用者進行認證和許可權控制。於是,就有了相應的方案來解決這問題。常用的方法有三個 在早期的web應...

Web會話管理(追蹤)

背景 http 是無狀態協議,乙個請求,乙個響應,之後誰也不認識誰。為了標識 記錄每個使用者的使用者狀態,根據使用者狀態,推薦個性化服務,描繪出 使用者畫像 出現了會話管理技術 前三個只支援web 優點 使用者狀態 儲存 在客戶端 缺點 文字格式 大小受限 4kb 請求頭 使用者可以清除 禁止 實際...

聊聊Web應用的會話管理

http連線是無狀態的,但web程式互動中經常又需要狀態。所以目前流行的基本是cookie,session結合方式來管理,cookie中會帶乙個會話標識,如果不用cookie,可能會將會話標識跟在位址列後面。但也有不通過session這樣方式的,使用自定義的方式來維護狀態。但有一點一定要注意,不能用...