教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

什么是會話跟蹤技術?能實現哪些功能?

更新時間:2023年05月16日17時09分 來源:傳智教育 瀏覽次數:

好口碑IT培訓

對于會話跟蹤這四個詞,我們需要拆開來進行解釋,首先要理解什么是會話,然后再去理解什么是會話跟蹤:

會話:用戶打開瀏覽器,訪問web服務器的資源,會話建立,直到有一方斷開連接,會話結束。在 一次會話中可以包含多次請求和響應。從瀏覽器發(fā)出請求到服務端響應數據給前端之后,一次會話(在瀏覽器和服務器之間)就被建立了。

會話被建立后,如果瀏覽器或服務端都沒有被關閉,則會話就會持續(xù)建立著瀏覽器和服務器就可以繼續(xù)使用該會話進行請求發(fā)送和響應,上述的整個過程就被稱之為會話。

用實際場景來理解下會話,比如在我們訪問京東的時候,當打開瀏覽器進入京東首頁后,瀏覽器和京東的服務器之間就建立了一次會話,后面的搜索商品,查看商品的詳情,加入購物車等都是在這一次會話中完成。

思考:下圖中總共建立了幾個會話?

會話跟蹤技術

每個瀏覽器都會與服務端建立了一個會話,加起來總共是3個會話。會話跟蹤:一種維護瀏覽器狀態(tài)的方法,服務器需要識別多次請求是否來自于同一瀏覽器,以便在 同一次會話的多次請求間共享數據。

服務器會收到多個請求,這多個請求可能來自多個瀏覽器,如上圖中的6個請求來自3個瀏覽器服務器需要用來識別請求是否來自同一個瀏覽器

服務器用來識別瀏覽器的過程,這個過程就是會話跟蹤服務器識別瀏覽器后就可以在同一個會話中多次請求之間來共享數據

那么我們又有一個問題需要思考,一個會話中的多次請求為什么要共享數據呢?有了這個數據共享功能后能實現哪些功能呢?

購物車: 加入購物車和去購物車結算是兩次請求,但是后面這次請求要想展示前一次請求所添加的商品,就需要用到數據共享。

會話跟蹤技術

頁面展示用戶登錄信息:很多網站,登錄后訪問多個功能發(fā)送多次請求后,瀏覽器上都會有當前 登錄用戶的信息[用戶名],比如百度、京東、碼云等。

用戶名信息

網站登錄頁面的記住我功能:當用戶登錄成功后,勾選記住我按鈕后下次再登錄的時候,網站就會自動填充用戶名和密碼,簡化用戶的登錄操作,多次登錄就會有多次請求,他們之間也涉及到共享數據。

網站登錄頁面

登錄頁面的驗證碼功能:生成驗證碼和輸入驗證碼點擊注冊這也是兩次請求,這兩次請求的數據之間要進行對比,相同則允許注冊,不同則拒絕注冊,該功能的實現也需要在同一次會話中共享數據。

登錄頁面設計

通過這幾個例子的講解,相信大家對會話追蹤技術已經有了一定的理解,該技術在實際開發(fā)中也非常重要。那么接下來我們就需要去學習下會話跟蹤技術,在學習這些技術之前,我們需要思考:為什么現在瀏覽器和服務器不支持數據共享呢?

·瀏覽器和服務器之間使用的是HTTP請求來進行數據傳輸

·HTTP協議是無狀態(tài)的,每次瀏覽器向服務器請求時,服務器都會將該請求視為新的請求

·HTTP協議設計成無狀態(tài)的目的是讓每次請求之間相互獨立,互不影響

請求與請求之間獨立后,就無法實現多次請求之間的數據共享分析完具體的原因后,那么該如何實現會話跟蹤技術呢? 具體的實現方式有:

(1)客戶端會話跟蹤技術:Cookie

(2)服務端會話跟蹤技術:Session

這兩個技術都可以實現會話跟蹤,它們之間最大的區(qū)別:Cookie是存儲在瀏覽器端而Session是存儲在服務器端。

0 分享到:
和我們在線交談!