天堂av免费 I av无码小缝喷白浆在线观看 I 欧美日韩一区在线播放 I 污黄瓜视频 I 色av色 I 亚洲加勒比少妇无码av I 久久人人97超碰国产精品 I 黑料网址成人免费观看 I 色鬼三级在线播放 I 2019久久久最新精品 I 国产成a人片在线观看视频 I 伊人精品久久久久中文字幕 I 日韩中出 I 亚洲第一欧美 I 火辣日本少妇 I 国产97av I 亚洲浮力影院 I 国产亚洲精品自在久久蜜tv I 黄色网址av I www.欧美色图.com I 碰碰精品 I 五月综合激情网 I 黄色片在线免费 I 精品久久久久久久久久ntr影视 I 日本黄色绿像 I 免费视频久久久久久久 I 久草在线视频看看 I 中文字幕国产在线观看 I 性色欲情网站iwww九文堂 I 偷拍对白清晰情侣视频 I 国产老头和老头xxxxx免费 I 麻豆精品在线 I 国产精伦一区二区三区 I 91麻豆精品国产91 I 一区二区三区在线视频看

×

網(wǎng)站的token機(jī)制是什么?

  • 作者:新網(wǎng)
  • 來(lái)源:新網(wǎng)
  • 瀏覽:100
  • 2018-02-24 17:31:00

Token的意思是“令牌”,是服務(wù)端生成的一串字符串,作為客戶(hù)端進(jìn)行請(qǐng)求的一個(gè)標(biāo)識(shí)。當(dāng)用戶(hù)第一次登錄后,服務(wù)器生成一個(gè)token并將此token返回給客戶(hù)端,以后客戶(hù)端只需帶上這個(gè)token前來(lái)請(qǐng)求數(shù)據(jù)即可,無(wú)需再次帶上用戶(hù)名和密碼。

 Token的意思是“令牌”,是服務(wù)端生成的一串字符串,作為客戶(hù)端進(jìn)行請(qǐng)求的一個(gè)標(biāo)識(shí)。當(dāng)用戶(hù)第一次登錄后,服務(wù)器生成一個(gè)token并將此token返回給客戶(hù)端,以后客戶(hù)端只需帶上這個(gè)token前來(lái)請(qǐng)求數(shù)據(jù)即可,無(wú)需再次帶上用戶(hù)名和密碼。

mp31866565_1442278364760_9.jpg
<div>簡(jiǎn)單token的組成;uid(用戶(hù)唯一的身份標(biāo)識(shí))、time(當(dāng)前時(shí)間的時(shí)間戳)、sign(簽名,token的前幾位以哈希算法壓縮成的一定長(zhǎng)度的十六進(jìn)制字符串。為防止token泄露)。
 
身份認(rèn)證概述
 
由于HTTP是一種沒(méi)有狀態(tài)的協(xié)議,它并不知道是誰(shuí)訪(fǎng)問(wèn)了我們的應(yīng)用。這里把用戶(hù)看成是客戶(hù)端,客戶(hù)端使用用戶(hù)名還有密碼通過(guò)了身份驗(yàn)證,不過(guò)下次這個(gè)客戶(hù)端再發(fā)送請(qǐng)求時(shí)候,還得再驗(yàn)證一下。
 
通用的解決方法就是,當(dāng)用戶(hù)請(qǐng)求登錄的時(shí)候,如果沒(méi)有問(wèn)題,在服務(wù)端生成一條記錄,在這個(gè)記錄里可以說(shuō)明登錄的用戶(hù)是誰(shuí),然后把這條記錄的id發(fā)送給客戶(hù)端,客戶(hù)端收到以后把這個(gè)id存儲(chǔ)在cookie里,下次該用戶(hù)再次向服務(wù)端發(fā)送請(qǐng)求的時(shí)候,可以帶上這個(gè)cookie,這樣服務(wù)端會(huì)驗(yàn)證一下cookie里的信息,看能不能在服務(wù)端這里找到對(duì)應(yīng)的記錄,如果可以,說(shuō)明用戶(hù)已經(jīng)通過(guò)了身份驗(yàn)證,就把用戶(hù)請(qǐng)求的數(shù)據(jù)返回給客戶(hù)端。
 
以上所描述的過(guò)程就是利用session,那個(gè)id值就是sessionid。我們需要在服務(wù)端存儲(chǔ)為用戶(hù)生成的session,這些session會(huì)存儲(chǔ)在內(nèi)存,磁盤(pán),或者數(shù)據(jù)庫(kù)。
 
基于token機(jī)制的身份認(rèn)證
 
使用token機(jī)制的身份驗(yàn)證方法,在服務(wù)器端不需要存儲(chǔ)用戶(hù)的登錄記錄。大概的流程:
 
客戶(hù)端使用用戶(hù)名和密碼請(qǐng)求登錄。
 
服務(wù)端收到請(qǐng)求,驗(yàn)證用戶(hù)名和密碼。
 
驗(yàn)證成功后,服務(wù)端會(huì)生成一個(gè)token,然后把這個(gè)token發(fā)送給客戶(hù)端。
 
客戶(hù)端收到token后把它存儲(chǔ)起來(lái),可以放在cookie或者Local Storage(本地存儲(chǔ))里。
 
客戶(hù)端每次向服務(wù)端發(fā)送請(qǐng)求的時(shí)候都需要帶上服務(wù)端發(fā)給的token。
 
服務(wù)端收到請(qǐng)求,然后去驗(yàn)證客戶(hù)端請(qǐng)求里面帶著token,如果驗(yàn)證成功,就向客戶(hù)端返回請(qǐng)求的數(shù)據(jù)。
 
利用token機(jī)制進(jìn)行登錄認(rèn)證,可以有以下方式:
 
用設(shè)備mac地址作為token
 
客戶(hù)端:客戶(hù)端在登錄時(shí)獲取設(shè)備的mac地址,將其作為參數(shù)傳遞到服務(wù)端
 
服務(wù)端:服務(wù)端接收到該參數(shù)后,便用一個(gè)變量來(lái)接收,同時(shí)將其作為token保存在數(shù)據(jù)庫(kù),并將該token設(shè)置到session中??蛻?hù)端每次請(qǐng)求的時(shí)候都要統(tǒng)一攔截,將客戶(hù)端傳遞的token和服務(wù)器端session中的token進(jìn)行對(duì)比,相同則登錄成功,不同則拒絕。
 
此方式客戶(hù)端和服務(wù)端統(tǒng)一了唯一的標(biāo)識(shí),并且保證每一個(gè)設(shè)備擁有唯一的標(biāo)識(shí)。缺點(diǎn)是服務(wù)器端需要保存mac地址;優(yōu)點(diǎn)是客戶(hù)端無(wú)需重新登錄,只要登錄一次以后一直可以使用,對(duì)于超時(shí)的問(wèn)題由服務(wù)端進(jìn)行處理。
 
以上就是小編對(duì)于網(wǎng)站的token機(jī)制的詳解。
 

免責(zé)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶(hù)自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認(rèn)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請(qǐng)發(fā)送郵件至:operations@xinnet.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

免費(fèi)咨詢(xún)獲取折扣

Loading