.NET Core 3.x 中JWT 的使用

一、安裝Microsoft.AspNetCore.Authentication.JwtBearer

      在nuget中搜索Microsoft.AspNetCore.Authentication.JwtBearer,添加引用到對應的項目中

二、在StartUp.cs 中添加代碼

      1、ConfigureServices 中添加以下代碼,其中JWTTokenOptions是自定義的一個類,表示請求的一些參數,然通過配置文件  appsettings.json獲取到該值,並設置爲單例模式,修改.netCore 的身份認證方式爲jwt。具體代碼如下圖所示

       

       

  2、Configure中添加以下代碼,比較簡單,不再囉嗦,如下圖所示

       

三、項目中開始使用

      1、獲取設置token 的代碼,此處我把客戶的Id作爲一個關鍵字存儲在token 中,如下圖

   

  2.在對應的Controller 添加標記 [Authorize]即可,如下圖所示

    

3.根據用戶請求時傳遞的token 可以解析出之前我們存儲的memberId 信息,該信息通過HttpContext屬性獲取到,如下圖所示

   

四、總結

   jwt 的流程是這樣的

  1.用戶登錄系統,服務器返回一個token到前端 ,這個tokne 中存儲的有客戶的標識信息

  2.登錄後續的每次請求,客戶端都需要攜帶這個tokne 到服務器,服務器進而解析出客戶的標識

  3.通過解析HttpContext 可以獲得存儲的信息,如果有不明白 .netCore 3.x 中HttpContext 的使用的朋友,可以點擊鏈接參考

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章