tft每日頭條

 > 生活

 > 請求中的token和cookie區别

請求中的token和cookie區别

生活 更新时间:2024-12-04 11:36:24

請求中的token和cookie區别?Cookie、session和Token都是用來做持久化處理的,目的就是讓客戶端和服務端互相認識HTTP請求默認是不持久的,沒有狀态的,誰也不認識誰的,現在小編就來說說關于請求中的token和cookie區别?下面内容希望能幫助到你,我們來一起看看吧!

請求中的token和cookie區别(CookieSessionToken的區别)1

請求中的token和cookie區别

Cookie、session和Token都是用來做持久化處理的,目的就是讓客戶端和服務端互相認識。HTTP請求默認是不持久的,沒有狀态的,誰也不認識誰的。

1、Cookie

Cookie是一個非常具體的東西,指的就是浏覽器裡面能永久存儲的一種數據,僅僅是浏覽器實現的一種數據存儲功能。

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

2、Session

Session從字面上講,就是會話。服務器要知道當前發請求給自己的是誰。為了做這種區分,服務器就要給每個客戶端分配不同的“身份标識”,然後客戶端每次向服務器發請求的時候,都帶上這個“身份标識”,服務器就知道這個請求來自于誰了。至于客戶端怎麼保存這個“身份标識”,可以有很多種方式,對于浏覽器客戶端,默認采用Cookie的方式。

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

3、Token

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

比如你授權(登錄)一個程序時,他就是個依據,判斷你是否已經授權該軟件;Cookie就是寫在客戶端的一個txt文件,裡面包括你登錄信息之類的,這樣你下次在登錄某個網站,就會自動調用Cookie自動登錄用戶名;Session和Cookie差不多,隻是Session是寫在服務器端的文件,也需要在客戶端寫入Cookie文件,但是文件裡是你的浏覽器編号。Session的狀态是存儲在服務器端,客戶端隻有session id;而Token的狀态是存儲在客戶端。

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

Token特點:

  • 1、無狀态、可擴展;
  • 2、支持移動設備;
  • 3、跨程序調用;
  • 4、安全。

一般流程:

  • 1、客戶端向服務端申請Token;
  • 2、服務端收到請求,會去驗證用戶信息,簽發一個Token給客戶端,服務端自己也會保存 Token;
  • 3、客戶端收到服務端簽發的Token會保存起來,每次請求帶上Token;
  • 4、服務器收到其他請求,會去驗證客戶端的Token,如果成功則返回數據,不成功做其他處理。

公衆号:AllTests軟件測試

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved