瀏覽器與伺服器之間的通訊是通過http協議進行通訊,但http協議是無狀態協議,他不儲存客戶資訊,即當連線一次後就斷開了,下一次請求會重新連線,這樣就需要告訴伺服器你和上一次的連線的人是不是同乙個使用者,那麼就需要用到會話跟蹤技術才能實現
url重寫在客戶端瀏覽器不支援cookie的情況下使用的,它是客戶端瀏覽器請求伺服器時,url位址後面加上類似於 「sessionid=***」形式的引數,伺服器端通過獲取sessionid關鍵字來獲取會話值。
在程式第一次訪問伺服器端時,服務端並不能確認客戶端瀏覽器是否支援cookie。因此,當伺服器第一次發出請求時,服務端會預設採用url重寫,也就是將sessionid寫到url位址中傳遞。
核心**:string sessionid=request.getrequestedsessionid();
當客戶端傳送請求後,伺服器會根據提交給客戶端瀏覽器的資訊自動檢查客戶端是否啟用了cookie,如果啟用,將不再進行url重寫。如果沒有,則繼續使用url重寫。
隱藏表單域是將會話id新增到html表單元素中提交到伺服器,此表單元素並不在客戶端顯示,瀏覽時看不到,源**中才有
cookie是儲存在瀏覽器中的乙個小檔案,其包含多個鍵值對
伺服器使用 set-cookie 響應頭傳輸多個引數給瀏覽器,瀏覽器將其儲存為 cookie,客戶端請求時可以通過讀取cookie資訊傳送到伺服器,這樣就保證了cookie有效時,都可以讓伺服器識別出是同乙個客戶端了
每個使用者都有乙個不同的session,各個使用者之間不能共享。session儲存在伺服器端,可以進行資訊的存放,如果session內容過於複雜,當大量客戶訪問伺服器時,可能會導致記憶體溢位。
當客戶端第一次請求時,會在伺服器端建立乙個session物件並產生乙個sessionid來標識這個session物件,然後將這個sessionid放入到cookie中傳送到客戶端, 這樣下一次訪問時sessionid會傳送到伺服器中,在伺服器端就可以識別同一使用者的請求了
四種會話跟蹤技術
會話跟蹤是一種靈活 輕便的機制,它使web上的狀態程式設計變為可能。當使用者在同一 的多個頁面之間轉換時,根本無法確定是否是同乙個客戶,會話跟蹤技術就可以解決這個問題。當乙個客戶在多個頁面間切換時,伺服器會儲存該使用者的資訊。有四種方法可以實現會話跟蹤技術 url重寫 隱藏表單域 cookie se...
四種會話跟蹤技術
suc.jsp中獲取資料 sring name request.getparameter username sring pwd request.getparameter userpwd 3 cookie方式 伺服器上,響應cookie給瀏覽器 string name request.getparam...
四種會話跟蹤技術
session,cookie,url重寫,掩藏表單域 為什麼會出現會話跟蹤技術 基於http是一種無狀態,無連線的協議,但是在現實生活中我們在瀏覽器中瀏覽的資訊或是傳送的請求都希望服務端能夠識別是否是同乙個人傳送的請求,這時引入了會話跟蹤技術。四種技術的區別 session和cookie是相互依存的...