服務(wù)熱線:400-0033-166
萬商云集 - 企業(yè)數(shù)字化選用平臺

企業(yè)首選的

數(shù)字選用平臺

token是什么意思 token的作用

2022-10-10 09:33:38 閱讀(331 評論(0)

  Cookie、Session和Token都是用來做持久化處理的,目的就是讓客戶端和服務(wù)端互相認(rèn)識。HTTP請求默認(rèn)是不持久的,沒有狀態(tài)的,誰也不認(rèn)識誰的。下面小編就給大家來詳細(xì)介紹一下token是什么意思  token的作用這一塊的相關(guān)內(nèi)容,希望能幫助到大家。

token是什么意思 

  1、Cookie

  Cookie是一個非常具體的東西,指的就是瀏覽器里面能永久存儲的一種數(shù)據(jù),僅僅是瀏覽器實現(xiàn)的一種數(shù)據(jù)存儲功能。

  Cookie由服務(wù)器生成,通過響應(yīng)頭Set-Cookie字段發(fā)送給瀏覽器,瀏覽器把Cookie以key value形式保存到某個目錄下的文本文件里,下一次請求同一網(wǎng)站時會把該Cookie發(fā)送給服務(wù)器。由于Cookie是存在客戶端上的,所以瀏覽器加入了一些限制確保Cookie不會被惡意使用,同時不會占據(jù)太多磁盤空間,所以每個域的Cookie數(shù)量是有限的。

  2、Session

  Session從字面上講,就是會話。服務(wù)器要知道當(dāng)前發(fā)請求給自己的是誰。為了做這種區(qū)分,服務(wù)器就要給每個客戶端分配不同的“身份標(biāo)識”,然后客戶端每次向服務(wù)器發(fā)請求的時候,都帶上這個“身份標(biāo)識”,服務(wù)器就知道這個請求來自于誰了。至于客戶端怎么保存這個“身份標(biāo)識”,可以有很多種方式,對于瀏覽器客戶端,默認(rèn)采用Cookie的方式。

  服務(wù)器使用Session把用戶的信息臨時保存在了服務(wù)器上,用戶離開網(wǎng)站后Session會被銷毀。這種用戶信息存儲方式相對Cookie來說更安全,可是Session有一個缺陷:如果web服務(wù)器做了負(fù)載均衡,那么下一個操作請求到了另一臺服務(wù)器的時候Session會丟失。

21.jpg

  3、Token

  Token意思是“令牌”,用戶身份的驗證方式,有點類似于Cookie,相對來說更安全。

  比如你授權(quán)(登錄)一個程序時,他就是個依據(jù),判斷你是否已經(jīng)授權(quán)該軟件;Cookie就是寫在客戶端的一個txt文件,里面包括你登錄信息之類的,這樣你下次在登錄某個網(wǎng)站,就會自動調(diào)用Cookie自動登錄用戶名;Session和Cookie差不多,只是Session是寫在服務(wù)器端的文件,也需要在客戶端寫入Cookie文件,但是文件里是你的瀏覽器編號。Session的狀態(tài)是存儲在服務(wù)器端,客戶端只有session id;而Token的狀態(tài)是存儲在客戶端。

  最簡單的Token組成:uid(用戶唯一的身份標(biāo)識)、time(當(dāng)前時間的時間戳)、sign(簽名,由Token的前幾位+鹽以哈希算法壓縮成一定長的十六進(jìn)制字符串,可以防止惡意第三方拼接Token請求服務(wù)器)。還可以把不變的參數(shù)也放進(jìn)Token,避免多次查庫。

  Token特點:

  1、無狀態(tài)、可擴(kuò)展;

  2、支持移動設(shè)備;

  3、跨程序調(diào)用;

  4、安全。

  一般流程:

  1、客戶端向服務(wù)端申請Token;

  2、服務(wù)端收到請求,會去驗證用戶信息,簽發(fā)一個Token給客戶端,服務(wù)端自己也會保存 Token;

  3、客戶端收到服務(wù)端簽發(fā)的Token會保存起來,每次請求帶上Token;

  4、服務(wù)器收到其他請求,會去驗證客戶端的Token,如果成功則返回數(shù)據(jù),不成功做其他處理。


上面就是關(guān)于token是什么意思  token的作用的全部內(nèi)容介紹,希望上面的相關(guān)內(nèi)容能幫助到大家。

未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明出處