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

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

什么是會(huì)話跟蹤技術(shù)?能實(shí)現(xiàn)哪些功能?

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

好口碑IT培訓(xùn)

對(duì)于會(huì)話跟蹤這四個(gè)詞,我們需要拆開來進(jìn)行解釋,首先要理解什么是會(huì)話,然后再去理解什么是會(huì)話跟蹤:

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

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

用實(shí)際場(chǎng)景來理解下會(huì)話,比如在我們?cè)L問京東的時(shí)候,當(dāng)打開瀏覽器進(jìn)入京東首頁后,瀏覽器和京東的服務(wù)器之間就建立了一次會(huì)話,后面的搜索商品,查看商品的詳情,加入購物車等都是在這一次會(huì)話中完成。

思考:下圖中總共建立了幾個(gè)會(huì)話?

會(huì)話跟蹤技術(shù)

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

服務(wù)器會(huì)收到多個(gè)請(qǐng)求,這多個(gè)請(qǐng)求可能來自多個(gè)瀏覽器,如上圖中的6個(gè)請(qǐng)求來自3個(gè)瀏覽器服務(wù)器需要用來識(shí)別請(qǐng)求是否來自同一個(gè)瀏覽器

服務(wù)器用來識(shí)別瀏覽器的過程,這個(gè)過程就是會(huì)話跟蹤服務(wù)器識(shí)別瀏覽器后就可以在同一個(gè)會(huì)話中多次請(qǐng)求之間來共享數(shù)據(jù)

那么我們又有一個(gè)問題需要思考,一個(gè)會(huì)話中的多次請(qǐng)求為什么要共享數(shù)據(jù)呢?有了這個(gè)數(shù)據(jù)共享功能后能實(shí)現(xiàn)哪些功能呢?

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

會(huì)話跟蹤技術(shù)

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

用戶名信息

網(wǎng)站登錄頁面的記住我功能:當(dāng)用戶登錄成功后,勾選記住我按鈕后下次再登錄的時(shí)候,網(wǎng)站就會(huì)自動(dòng)填充用戶名和密碼,簡(jiǎn)化用戶的登錄操作,多次登錄就會(huì)有多次請(qǐng)求,他們之間也涉及到共享數(shù)據(jù)。

網(wǎng)站登錄頁面

登錄頁面的驗(yàn)證碼功能:生成驗(yàn)證碼和輸入驗(yàn)證碼點(diǎn)擊注冊(cè)這也是兩次請(qǐng)求,這兩次請(qǐng)求的數(shù)據(jù)之間要進(jìn)行對(duì)比,相同則允許注冊(cè),不同則拒絕注冊(cè),該功能的實(shí)現(xiàn)也需要在同一次會(huì)話中共享數(shù)據(jù)。

登錄頁面設(shè)計(jì)

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

·瀏覽器和服務(wù)器之間使用的是HTTP請(qǐng)求來進(jìn)行數(shù)據(jù)傳輸

·HTTP協(xié)議是無狀態(tài)的,每次瀏覽器向服務(wù)器請(qǐng)求時(shí),服務(wù)器都會(huì)將該請(qǐng)求視為新的請(qǐng)求

·HTTP協(xié)議設(shè)計(jì)成無狀態(tài)的目的是讓每次請(qǐng)求之間相互獨(dú)立,互不影響

請(qǐng)求與請(qǐng)求之間獨(dú)立后,就無法實(shí)現(xiàn)多次請(qǐng)求之間的數(shù)據(jù)共享分析完具體的原因后,那么該如何實(shí)現(xiàn)會(huì)話跟蹤技術(shù)呢? 具體的實(shí)現(xiàn)方式有:

(1)客戶端會(huì)話跟蹤技術(shù):Cookie

(2)服務(wù)端會(huì)話跟蹤技術(shù):Session

這兩個(gè)技術(shù)都可以實(shí)現(xiàn)會(huì)話跟蹤,它們之間最大的區(qū)別:Cookie是存儲(chǔ)在瀏覽器端而Session是存儲(chǔ)在服務(wù)器端。

0 分享到:
和我們?cè)诰€交談!