自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

會(huì)話(huà)與Cookie:用戶(hù)登錄的原理是什么?

開(kāi)發(fā) 前端
Facebook、 Gmail、 Twitter 是我們每天都會(huì)用的網(wǎng)站(LCTT 譯注:才不是呢)。它們的共同點(diǎn)在于都需要你登錄進(jìn)去后才能做進(jìn)一步的操作。只有你通過(guò)認(rèn)證并登錄后才能在 twitter 發(fā)推,在 Facebook 上評(píng)論,以及在 Gmail上處理電子郵件。

[[220334]]

Facebook、 Gmail、 Twitter 是我們每天都會(huì)用的網(wǎng)站(LCTT 譯注:才不是呢)。它們的共同點(diǎn)在于都需要你登錄進(jìn)去后才能做進(jìn)一步的操作。只有你通過(guò)認(rèn)證并登錄后才能在 twitter 發(fā)推,在 Facebook 上評(píng)論,以及在 Gmail上處理電子郵件。

gmail, facebook login page

gmail, facebook login page

那么登錄的原理是什么?網(wǎng)站是如何認(rèn)證的?它怎么知道是哪個(gè)用戶(hù)從哪兒登錄進(jìn)來(lái)的?下面我們來(lái)對(duì)這些問(wèn)題進(jìn)行一一解答。

 

用戶(hù)登錄的原理是什么?

每次你在網(wǎng)站的登錄頁(yè)面中輸入用戶(hù)名和密碼時(shí),這些信息都會(huì)發(fā)送到服務(wù)器。服務(wù)器隨后會(huì)將你的密碼與服務(wù)器中的密碼進(jìn)行驗(yàn)證。如果兩者不匹配,則你會(huì)得到一個(gè)錯(cuò)誤密碼的提示。如果兩者匹配,則成功登錄。

 

登錄時(shí)發(fā)生了什么?

登錄后,web 服務(wù)器會(huì)初始化一個(gè)會(huì)話(huà)session并在你的瀏覽器中設(shè)置一個(gè) cookie 變量。該 cookie 變量用于作為新建會(huì)話(huà)的一個(gè)引用。搞暈了?讓我們說(shuō)的再簡(jiǎn)單一點(diǎn)。

 

會(huì)話(huà)的原理是什么?

服務(wù)器在用戶(hù)名和密碼都正確的情況下會(huì)初始化一個(gè)會(huì)話(huà)。會(huì)話(huà)的定義很復(fù)雜,你可以把它理解為“關(guān)系的開(kāi)始”。

[[220335]]

session beginning of a relationship or partnership

認(rèn)證通過(guò)后,服務(wù)器就開(kāi)始跟你展開(kāi)一段關(guān)系了。由于服務(wù)器不能象我們?nèi)祟?lèi)一樣看東西,它會(huì)在我們的瀏覽器中設(shè)置一個(gè) cookie 來(lái)將我們的關(guān)系從其他人與服務(wù)器的關(guān)系標(biāo)識(shí)出來(lái)。

 

什么是 Cookie?

cookie 是網(wǎng)站在你的瀏覽器中存儲(chǔ)的一小段數(shù)據(jù)。你應(yīng)該已經(jīng)見(jiàn)過(guò)他們了。

theitstuff official facebook page cookies

theitstuff official facebook page cookies

當(dāng)你登錄后,服務(wù)器為你創(chuàng)建一段關(guān)系或者說(shuō)一個(gè)會(huì)話(huà),然后將唯一標(biāo)識(shí)這個(gè)會(huì)話(huà)的會(huì)話(huà) id 以 cookie 的形式存儲(chǔ)在你的瀏覽器中。

 

什么意思?

所有這些東西存在的原因在于識(shí)別出你來(lái),這樣當(dāng)你寫(xiě)評(píng)論或者發(fā)推時(shí),服務(wù)器能知道是誰(shuí)在發(fā)評(píng)論,是誰(shuí)在發(fā)推。

當(dāng)你登錄后,會(huì)產(chǎn)生一個(gè)包含會(huì)話(huà) id 的 cookie。這樣,這個(gè)會(huì)話(huà) id 就被賦予了那個(gè)輸入正確用戶(hù)名和密碼的人了。

facebook cookies in web browser

facebook cookies in web browser

也就是說(shuō),會(huì)話(huà) id 被賦予給了擁有這個(gè)賬戶(hù)的人了。之后,所有在網(wǎng)站上產(chǎn)生的行為,服務(wù)器都能通過(guò)他們的會(huì)話(huà) id 來(lái)判斷是由誰(shuí)發(fā)起的。

 

如何讓我保持登錄狀態(tài)?

會(huì)話(huà)有一定的時(shí)間限制。這一點(diǎn)與現(xiàn)實(shí)生活中不一樣,現(xiàn)實(shí)生活中的關(guān)系可以在不見(jiàn)面的情況下持續(xù)很長(zhǎng)一段時(shí)間,而會(huì)話(huà)具有時(shí)間限制。你必須要不斷地通過(guò)一些動(dòng)作來(lái)告訴服務(wù)器你還在線(xiàn)。否則的話(huà),服務(wù)器會(huì)關(guān)掉這個(gè)會(huì)話(huà),而你會(huì)被登出。

websites keep me logged in option

websites keep me logged in option

不過(guò)在某些網(wǎng)站上可以啟用“保持登錄”功能,這樣服務(wù)器會(huì)將另一個(gè)唯一變量以 cookie 的形式保存到我們的瀏覽器中。這個(gè)唯一變量會(huì)通過(guò)與服務(wù)器上的變量進(jìn)行對(duì)比來(lái)實(shí)現(xiàn)自動(dòng)登錄。若有人盜取了這個(gè)唯一標(biāo)識(shí)(我們稱(chēng)之為 cookie stealing),他們就能訪(fǎng)問(wèn)你的賬戶(hù)了。

 

結(jié)論

我們討論了登錄系統(tǒng)的工作原理以及網(wǎng)站是如何進(jìn)行認(rèn)證的。我們還學(xué)到了什么是會(huì)話(huà)和 cookies,以及它們?cè)诘卿洐C(jī)制中的作用。

我們希望你們以及理解了用戶(hù)登錄的工作原理,如有疑問(wèn),歡迎提問(wèn)。 

責(zé)任編輯:龐桂玉 來(lái)源: Linux中國(guó)
相關(guān)推薦

2024-11-26 08:21:57

2009-08-06 16:02:05

無(wú)Cookie會(huì)話(huà)

2021-11-10 12:13:02

HostonlyCookie瀏覽器

2021-07-13 07:22:24

框架DjangoSession

2009-08-06 16:11:17

2023-11-05 10:52:54

DNS服務(wù)器瀏覽器

2025-01-15 13:30:48

FeignHTTPJava

2021-09-10 06:50:03

HashMapHash方法

2013-03-20 09:16:48

2024-11-25 12:20:00

Hystrix微服務(wù)架構(gòu)

2016-12-26 18:05:00

單點(diǎn)登錄原理簡(jiǎn)單實(shí)現(xiàn)

2023-10-24 09:07:14

CookieSessionHTTP

2021-07-29 11:46:27

NAS存儲(chǔ)NAS服務(wù)器

2021-09-27 08:02:17

CDN加速網(wǎng)站網(wǎng)絡(luò)

2021-05-09 09:30:13

Docker操作系統(tǒng)容器

2021-10-29 13:26:54

單點(diǎn)登錄SSO

2011-11-21 10:40:42

蘋(píng)果iCloud云計(jì)算

2018-09-29 15:15:40

ChromeGoogle瀏覽器

2024-07-15 08:20:24

2010-10-29 11:22:23

Oracle用戶(hù)會(huì)話(huà)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)