中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ASP.NET Core中怎么使用Session實現身份驗證

發布時間:2021-07-15 14:34:51 來源:億速云 閱讀:352 作者:Leah 欄目:編程語言

本篇文章為大家展示了ASP.NET Core中怎么使用Session實現身份驗證,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

一、什么是Session?

Session即會話,是指一個用戶在一段時間內對某一個站點的一次訪問。  Session對象在.NET中對應HttpSessionState類,表示“會話狀態”,可以保存與當前用戶會話相關的信息。Session對象用于存儲從一個用戶開始訪問某個特定的aspx的頁面起,到用戶離開為止,特定的用戶會話所需要的信息。用戶在應用程序的頁面切換時,Session對象的變量不會被清除。

ASP.NET頁面是"無狀態"的,這意味著每次向服務器發送一個請求,服務器都會生成一個該頁面的實例。但有時候,我們希望在不同的頁面之間共享信息,比如購物車、用戶登錄等,于是,ASP.NET為我們提供了一個服務端的Session機制。

對于一個Web應用程序而言,所有用戶訪問到的Application對象的內容是完全一樣的;而不同用戶會話訪問到的Session對象的內容則各不相同。Session可以保存變量,該變量只能供一個用戶使用,也就是說,每一個網頁瀏覽者都有自己的Session對象變量,即Session對象具有唯一性。 

二、 Session是如何工作的以及工作機制和工作流程

服務端的Session機制是基于客戶端的,也就是說服務端的Session會保存每個客戶端的信息到服務端內存中。

具體過程是這樣的:
→客戶端向服務端發出請求
→服務端響應客戶端,并針對該客戶端創建Session和唯一的Session ID
→把Session ID作為key, Session內容作為value,以鍵值對形式存儲到Session State Provider中
→客戶端帶著專屬的Session ID再次向服務端請求
→服務端的Session機制根據客戶端的Session ID,從Session State Provider中取出內容返回給客戶端。

三、ASP.NET Core MVC使用Session方式來實現用戶身份驗證

這篇文章主要為大家詳細介紹了ASP.NET Core MVC使用Session驗證用戶登錄的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下,用最簡單的Session方式記錄用戶登錄狀態。這里阿笨已經把關鍵性代碼展示出來了,感興趣的可以學習一下。

基于Session的身份驗證實現 這種方式可能是在Asp.Net框架提供的幾種驗證方式之外的最常用的身份驗證方式。

實現核心原理和具體實現步驟:

1)、客戶端發送身份認證數據到服務器端服務器收到并驗證后將用戶信息保存到Session對象中,

2)、然后生成對應的標識并將標識寫入cookie中當客戶端下次請求時帶上該cookie標識服務器通過該cookie標識從session對象中獲取對應的用戶信息 。

1)、 Asp.Net Core中Session中間件的使用

我們需要在用戶登錄以后記錄當前登錄用戶的會話狀態,ASP.NET Core 已經內置發布了一個關于會話的程序包Microsoft.Extensions.DependencyInjection

里面提供了用于管理會話狀態的中間件。

修改Startup.cs文件的的ConfigureServices方法,增加Session服務注冊

ASP.NET Core中怎么使用Session實現身份驗證

修改Startup.cs文件的的Configure方法,請求管道中啟用Session

ASP.NET Core中怎么使用Session實現身份驗證

2)、添加BaseAdminController控制器,重寫OnActionExecuting方法,每次訪問控制器前觸發。

ASP.NET Core中怎么使用Session實現身份驗證

3)、登錄成功后實現對用戶信息存儲到Session中

ASP.NET Core中怎么使用Session實現身份驗證

4)、需要驗證的控制器繼承BaseAdminController

比如首頁

ASP.NET Core中怎么使用Session實現身份驗證

用戶管理頁面

ASP.NET Core中怎么使用Session實現身份驗證

上述內容就是ASP.NET Core中怎么使用Session實現身份驗證,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

汕头市| 乐平市| 南昌县| 阿拉尔市| 多伦县| 抚宁县| 志丹县| 工布江达县| 独山县| 永春县| 柯坪县| 广丰县| 鹿泉市| 赣榆县| 开阳县| 青铜峡市| 夏津县| 八宿县| 崇文区| 岱山县| 广东省| 冷水江市| 美姑县| 城口县| 芒康县| 阆中市| 廉江市| 灌云县| 绥棱县| 元江| 宣威市| 嵊州市| 阿坝| 隆安县| 颍上县| 咸阳市| 来安县| 城口县| 深州市| 泗水县| 元阳县|