在vue中,token的意思是“令牌”,是服務端生成的字符串,是客戶端進行請求的一個標識;當用戶第一次登錄后,服務端生成一個token并返回給客戶端,以后客戶端只需要帶著token請求數據即可,不需再使用用戶名和密碼。
本文操作環境:windows10系統、Vue2.9.6版,DELL G3電腦。
vue里面的token是什么
一、什么是token
token的意思是“令牌”,是服務端生成的一串字符串,作為客戶端進行請求的一個標識。當用戶第一次登錄后,服務器生成一個token并將此token返回給客戶端,以后客戶端只需帶上這個token前來請求數據即可,無需再次帶上用戶名和密碼。
簡單token的組成;uid(用戶唯一的身份標識)、time(當前時間的時間戳)、sign(簽名,token的前幾位以哈希算法壓縮成的一定長度的十六進制字符串。為防止token泄露)。
二、token的作用
1、防止表單重復提交:主要的理念是,客戶端初始化的時候(一般就是剛剛進入頁面的時候)就調用后端代碼,后端代碼生成一個token,返回給客戶端,客戶端儲存token(可以在前臺使用Form表單中使用隱藏域來存儲這個Token,也可以使用cookie),然后就將request(請求)中的token與(session)中的token進行比較
2、用來作身份驗證:
(1)身份認證概述
由于HTTP是一種沒有狀態的協議,它并不知道是誰訪問了我們的應用。這里把用戶看成是客戶端,客戶端使用用戶名還有密碼通過了身份驗證,不過下次這個客戶端再發送請求時候,還得再驗證一下。
通用的解決方法是:當用戶請求登錄的時候,如果沒有問題,在服務端生成一條記錄,在這個記錄里可以說明登錄的用戶是誰,然后把這條記錄的id發送給客戶端,客戶端收到以后把這個id存儲在cookie里,下次該用戶再次向服務端發送請求的時候,可以帶上這個cookie,這樣服務端會驗證一下cookie里的信息,看能不能在服務端這里找到對應的記錄,如果可以,說明用戶已經通過了身份驗證,就把用戶請求的數據返回給客戶端。
以上所描述的過程就是利用session,那個id值就是sessionid。我們需要在服務端存儲為用戶生成的session,這些session會存儲在內存,磁盤,或者數據庫。
【