JSP四種會話跟蹤技術

2021-05-22 12:29:17 字數 1721 閱讀 6654

cookie:伺服器在乙個應答首部傳遞給瀏覽器的名稱 /

值對。瀏覽器儲存的時間由

cookie

的過期時間屬性來指定。當瀏覽器向某個伺服器 傳送乙個請求時,它會檢查其儲存的

cookie

,並在請求首部中包含從同一臺伺服器上接收到的所有

cookie。

session tracking:

在 瀏覽器和伺服器之間不直接傳送所有的狀態資訊,而只是傳遞表示符(

session id

)。瀏覽器傳送

sessionid,

服 務器跟蹤與該會話相關聯的所有資訊。傳遞

sessionid

可以通過

cookie

和url

複寫技術,大部分容器都支援這兩種技術。伺服器無法分辨使用者是否關閉了瀏覽器,因此關閉瀏覽器意味 著與先前的會話關聯的所有會話資料都保留在伺服器上,直到會話超時,伺服器銷毀會話對像。 ®

跟蹤 同一會話中的請求的會話

id可以有多種方法,主要有

cookie

和url

複寫。

url複寫:把會話

id編碼在

url中。 例:

counter.jjsp;jsessionnid=be8d697876787876befdbde898789098980

這樣,即使瀏覽器不支援

cookie

,也能夠實現會話跟蹤。 對於

url複寫,伺服器從請求的

uri中提取出會話

id,並把該請求與 相應的會話關聯起來,然後在訪問會話資料的時候,

jsp頁面所進行的處理方式就和使用

cookie

跟蹤會話

id時所使用的方式 完全相同。所以

sesssion

的實現要依靠

cookie

或url

複寫技術。

如果想為不支援

cookie

的瀏覽器提供會話跟蹤,就必須使用

行為對應用程式中的所有

url進行複寫。這意味著應用程式中的所有頁面(至少是那些帶有對其他頁面引用的頁面)都必須是

jsp頁面,這樣 頁面引用才能以動態方式進行編碼,如果遺漏了乙個

ur,那麼服務就會失去對會話的跟蹤。

隱藏表單域:隱藏表單域是將會話id新增到html的隱藏表單中(型別為hidden的input)。

重定向和**

可以使用兩種方法來呼叫另一 個頁面,重定向和**。 i)

**:

**,jsp

容器將使用乙個內部方法來呼叫目標頁面,新的頁面繼續處理同乙個請求,而瀏覽器不會知道這個過程涉 及到了多個頁面。瀏覽器

url會保持不變。

ii)重定向:

重定向與**不同,重定向時,第乙個頁面會通知瀏覽器傳送乙個新的目標頁面的請求。瀏覽 器所顯示的

url會變成新頁面的

url。

重定向的速度比**要慢,因為瀏覽器得發出乙個新的請求。

同時,由於重定向產生了乙個 新的請求,所以經過一次重定向之後請求作用域內的物件將無法再使用了。

JSP四種會話跟蹤技術

cookie 伺服器在乙個應答首部傳遞給瀏覽器的名稱 值對。瀏覽器儲存的時間由cookie的過期時間屬性來指定。當瀏覽器向某個伺服器傳送乙個請求時,它會檢查其儲存的cookie,並在請求首部中包含從同一臺伺服器上接收到的所有cookie。session tracking 在瀏覽器和伺服器之間不直接傳...

JSP四種會話跟蹤技術

cookie 伺服器在乙個應答首部傳遞給瀏覽器的名稱 值對。瀏覽器儲存的時間由cookie的過期時間屬性來指定。當瀏覽器向某個伺服器傳送乙個請求時,它會檢查其儲存的cookie,並在請求首部中包含從同一臺伺服器上接收到的所有cookie。session tracking 在瀏覽器和伺服器之間不直接傳...

jsp的四種會話跟蹤技術

客戶端開啟與伺服器的連線,發出請求直到伺服器響應客戶端請求的全過程稱之為會話 瀏覽器與伺服器之間的通訊是通過http協議進行通訊的,而http協議是 無狀態 的協議,它不能儲存客戶的資訊,即一次響應完成之後連線就斷開了,下一次的請求需要重新連線,當使用者在同一 的多個頁面之間轉換時,根本無法確定是否...