最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

如何在node.js中使用?JsonWebToken模塊進行token加密

 更新時間:2023年03月17日 11:31:43   作者:。Idea  
目前在web框架中最流行的身份驗證是使用jsonwebtoken,簡稱jwt.可以設置加密方式,過期時間,存放個人信息,逆解析,下面這篇文章主要給大家介紹了關(guān)于如何在node.js中使用?JsonWebToken模塊進行token加密的相關(guān)資料,需要的朋友可以參考下

一、token

1、什么是token

? ‘令牌’的意思,是一個字符串,在客戶端第一次請求服務器時由服務器生成,然后響應給客戶端(保存),當客戶端再次請求服務器時,帶上這個token,就不需要再帶用戶名和密碼。

2、作用

? (1)防止表單重復提交:

? (2)進行身份驗證:

? a、為什么要進行身份認證:基于http協(xié)議的請求,無狀態(tài)(當客戶端與服務器之間的請求-響應過程完成后,客戶端和服務器就斷開了聯(lián)系、服務器無法記錄或跟蹤客戶端)。當客戶端再次向服務器發(fā)起請求的時候,服務器需要對客戶端的身份進行認證。

 b、傳統(tǒng)的身份認證方式:

? cookie:在服務器端生成,保存在客戶端。

? session:在服務器端生成,保存在服務器端

? c、token認證:在服務器端不需要保存用戶的身份信息,流程如下:

        ? (a). 客戶端使用用戶名和密碼請求登錄。

?         (b). 服務端收到請求,驗證用戶名和密碼。

?         (c). 驗證成功后,服務端會生成一個token,然后把這個token發(fā)送給客戶端。

        ? (d). 客戶端收到token后把它存儲起來,可以放在cookie或者Local Storage(本地存儲)里。

?         (e). 客戶端每次向服務端發(fā)送請求的時候都需要帶上服務端發(fā)給的token。

        (f). 服務端收到請求,然后去驗證客戶端請求里面帶著token,如果驗證成功,就向客戶端

                返回請求的數(shù)據(jù)。

? d、token的本質(zhì):

        是對用戶的信息進行加密、解密,因此保存在客戶端的token是加密后的一個字符串

二、Express中實現(xiàn)token的方法:

1、使用JWT模塊:JsonWebToken

? JWT的函數(shù):

? sign(加密的數(shù)據(jù),加密的密鑰,其他參數(shù));返回值是一個加密后的字符串

? verify(token,加密的密鑰,[options]);驗證token,返回值是一個對象,加密數(shù)據(jù)的信息,包括有效期

? decode(token,加密的密鑰);解密的方法。返回值是一個對象,加密數(shù)據(jù)的信息,包括有效期

2、token驗證的流程

? (1)第一次向服務器發(fā)起登錄請求時,沒有token信息

? (2)當用戶登錄后,在服務器端生成token(token中包含哪些信息由用戶決定),然后將token響應給客戶端

? (3)當客戶端接收到服務器端響應的token后,將token存入本地的緩存中(如localStorage、cookie)

? (4)當客戶端再次訪問服務器時,需要在請求頭中包含token;服務器在接收到客戶端的請求后,先查找客戶端的請求頭中是否有

? token,若沒有,則表明該用戶是非法用戶,就不響應任何數(shù)據(jù);若有token,則表明該用戶是合法用戶,就響應數(shù)據(jù)

3、Express中實現(xiàn)過程 ?

(1)安裝、導入JsonWebToken模塊 ?

(2)在登錄接口中生成token并響應給客戶端

(3)在客戶端將接收到的token保存到本地緩存

? (4)當客戶端再次訪問(包括未登錄的訪問——非法訪問)服務器,服務器端會對token進行驗證

 (5)客戶端每次向服務器發(fā)起請求時都必須攜帶token,否則視為非法用戶  

總結(jié) 

到此這篇關(guān)于如何在node.js中使用?JsonWebToken模塊進行token加密的文章就介紹到這了,更多相關(guān)node.js進行token加密內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Node.js卸載與重裝及zip與msi安裝詳解

    Node.js卸載與重裝及zip與msi安裝詳解

    Node.js是一個JavaScript運行環(huán)境,可以使JavaScript這類腳本語言編寫出來的代碼運行速度獲得極大提升,下面這篇文章主要給大家介紹了關(guān)于Node.js卸載與重裝及zip與msi安裝的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • 在Node.js中判定文件是否可執(zhí)行的方法詳解

    在Node.js中判定文件是否可執(zhí)行的方法詳解

    在進行前端開發(fā)時,經(jīng)常需要處理各種文件權(quán)限的問題,特別是在Node.js環(huán)境中,你可能想要判斷某個文件是否具有可執(zhí)行權(quán)限,本文將詳細介紹如何使用isexe模塊來進行這一操作,需要的朋友可以參考下
    2024-05-05
  • VsCode無法識別node問題解決過程

    VsCode無法識別node問題解決過程

    這篇文章主要給大家介紹了關(guān)于VsCode無法識別node問題解決的相關(guān)資料,文中通過圖文介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2023-07-07
  • nodejs中實現(xiàn)sleep功能實例

    nodejs中實現(xiàn)sleep功能實例

    這篇文章主要介紹了nodejs中實現(xiàn)sleep功能實例,本文講解了sleep功能的開發(fā)過程和使用效果及性能測試,需要的朋友可以參考下
    2015-03-03
  • 說說node中的可讀流和可寫流的區(qū)別

    說說node中的可讀流和可寫流的區(qū)別

    這篇文章主要介紹了說說node中的可讀流和可寫流的區(qū)別,詳細的介紹了可讀流和可寫流,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-06-06
  • node.js利用express自動搭建項目的全過程

    node.js利用express自動搭建項目的全過程

    這篇文章主要給大家介紹了關(guān)于node.js利用express自動搭建項目的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • 你一定會收藏的Nodejs代碼片段

    你一定會收藏的Nodejs代碼片段

    Nodejs值得收集的代碼片段,大家可以收藏起來,運用到之后的工作中,感興趣的小伙伴們可以參考一下
    2016-02-02
  • Node.js調(diào)用java之node-java問題

    Node.js調(diào)用java之node-java問題

    這篇文章主要介紹了Node.js調(diào)用java之node-java問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • nodejs加密Crypto的實例代碼

    nodejs加密Crypto的實例代碼

    下面小編就為大家?guī)硪黄猲odejs加密Crypto的實例代碼。小編覺得挺不錯的, 現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-07-07
  • Node中文件斷點續(xù)傳原理和方法總結(jié)

    Node中文件斷點續(xù)傳原理和方法總結(jié)

    在之前做過一個小項目,涉及到了文件上傳,在大文件上面使用了斷點續(xù)傳,降低了服務器方面的壓力,現(xiàn)在小編把Node中文件斷點續(xù)傳原理和方法總結(jié)分享給大家,感興趣的朋友一起看看吧
    2022-01-01

最新評論

海晏县| 长宁区| 舒城县| 武宁县| 绍兴县| 山阴县| 万盛区| 芜湖县| 万宁市| 阿拉善左旗| 会宁县| 阳春市| 宁安市| 炎陵县| 合作市| 嫩江县| 高邮市| 大悟县| 尤溪县| 安溪县| 临沂市| 贵南县| 黑水县| 曲水县| 江油市| 建德市| 沁源县| 渭南市| 长葛市| 多伦县| 申扎县| 鄂尔多斯市| 宁阳县| 苗栗市| 淮安市| 石阡县| 扎赉特旗| 绵阳市| 台安县| 朝阳区| 德钦县|