中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

ASP.NETCore中怎么使用Session實現(xiàn)身份驗證

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

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比資溪網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式資溪網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋資溪地區(qū)。費用合理售后完善,十余年實體公司更值得信賴。

一、什么是Session?

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

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

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

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

服務(wù)端的Session機制是基于客戶端的,也就是說服務(wù)端的Session會保存每個客戶端的信息到服務(wù)端內(nèi)存中。

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

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

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

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

實現(xiàn)核心原理和具體實現(xiàn)步驟:

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

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

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

我們需要在用戶登錄以后記錄當前登錄用戶的會話狀態(tài),ASP.NET Core 已經(jīng)內(nèi)置發(fā)布了一個關(guān)于會話的程序包Microsoft.Extensions.DependencyInjection

里面提供了用于管理會話狀態(tài)的中間件。

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

ASP.NET Core中怎么使用Session實現(xiàn)身份驗證

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

ASP.NET Core中怎么使用Session實現(xiàn)身份驗證

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

ASP.NET Core中怎么使用Session實現(xiàn)身份驗證

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

ASP.NET Core中怎么使用Session實現(xiàn)身份驗證

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

比如首頁

ASP.NET Core中怎么使用Session實現(xiàn)身份驗證

用戶管理頁面

ASP.NET Core中怎么使用Session實現(xiàn)身份驗證

上述內(nèi)容就是ASP.NET Core中怎么使用Session實現(xiàn)身份驗證,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

當前文章:ASP.NETCore中怎么使用Session實現(xiàn)身份驗證
鏈接分享:http://www.rwnh.cn/article8/jdgpop.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、企業(yè)網(wǎng)站制作、網(wǎng)站設(shè)計、做網(wǎng)站、用戶體驗、手機網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

手機網(wǎng)站建設(shè)
潮州市| 尚义县| 西乌珠穆沁旗| 邵东县| 元朗区| 陇川县| 高清| 清河县| 灵璧县| 柯坪县| 胶南市| 繁昌县| 沙河市| 垣曲县| 文成县| 隆德县| 三亚市| 崇左市| 枣阳市| 秭归县| 遵义市| 平远县| 勐海县| 福清市| 乌拉特后旗| 吉林省| 黑山县| 北川| 阳山县| 香格里拉县| 杭锦后旗| 邢台市| 本溪市| 蓬莱市| 桓台县| 崇左市| 西安市| 刚察县| 安图县| 通道| 武城县|