token和jwt存在什么區(qū)別
????????token需要查庫驗證token 是否有效,而JWT不用查庫或者少查庫,直接在服務(wù)端進行校驗,并且不用查庫。因為用戶的信息及加密信息在第二部分payload和第三部分簽證中已經(jīng)生成,只要在服務(wù)端進行校驗就行,并且校驗也是JWT自己實現(xiàn)的。 TOKEN 概念: 令牌, 是訪問資源的憑證。?
Token的認證流程:?
????????1. 用戶輸入用戶名和密碼,發(fā)送給服務(wù)器。?
????????2. 服務(wù)器驗證用戶名和密碼,正確的話就返回一個簽名過的token(token 可以認為就是個長長的字符串),瀏覽器客戶端拿到這個token。?
????????3. 后續(xù)每次請求中,瀏覽器會把token作為http header發(fā)送給服務(wù)器,服務(wù)器驗證簽名是否有效,如果有效那么認證就成功,可以返回客戶端需要的數(shù)據(jù)。 特點: 這種方式的特點就是客戶端的token中自己保留有大量信息,服務(wù)器沒有存儲這些信息。
?JWT 概念:
?????????????JWT是json web token縮寫。它將用戶信息加密到token里,服務(wù)器不保存任何用戶信息。服務(wù)器通過使用保存的密鑰驗證token的正確性,只要正確即通過驗證。?
組成:?
????????WT包含三個部分: Header頭部,Payload負載和Signature簽名。由三部分生成token,三部分之間用“.”號做分割。