国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

asp.net web api 用戶身份驗(yàn)證

這篇具有很好參考價值的文章主要介紹了asp.net web api 用戶身份驗(yàn)證。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

? ? ? ? 前后端分離的開發(fā)中,應(yīng)用服務(wù)需要進(jìn)行用戶身份的驗(yàn)證才允許訪問數(shù)據(jù)。實(shí)現(xiàn)的方法很簡單。創(chuàng)建一個webapi項(xiàng)目。在App_Start目錄下找到WebApiConfig.cs, 在里面增加一個實(shí)現(xiàn)類。

  public static class WebApiConfig
    {
        public static void Register(HttpConfiguration config)
        {
            // Web API 配置和服務(wù)
            config.Filters.Add(new CustomAuthorize());
            // Web API 路由
            config.MapHttpAttributeRoutes();

            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );
        }

        public class CustomAuthorize : AuthorizationFilterAttribute
        {
            public override void OnAuthorization(HttpActionContext actionContext)
            {
                //如果用戶的Action帶有AllowAnonymousAttribute,則不用檢測
                if (actionContext.ActionDescriptor.GetCustomAttributes<System.Web.Http.AllowAnonymousAttribute>().Any())
                {
                    return;
                }

                app 接口檢測 
                object au = actionContext.Request.Headers.Authorization;
                if (au == null)
                {
                    actionContext.Response = actionContext.Request.CreateResponse(HttpStatusCode.Unauthorized, new { Ret = 4002, Msg = "Token錯誤!" });
                }
                else if (!Redis.haskey(au.ToString()))
                {
                    actionContext.Response = actionContext.Request.CreateResponse(HttpStatusCode.Unauthorized, new { Ret = 4008, Msg = "Token超時!" });
                }
            }
        }
    }

Controller 類的實(shí)現(xiàn):文章來源地址http://www.zghlxwxcb.cn/news/detail-829874.html

 [RoutePrefix("api/v1")]
    public class ValuesController : ApiController
    {
        [AllowAnonymous]  //匿名訪問
        [Route("getData1"), HttpPost]
        public JObject getData1([FromBody] JObject data)
        {
            return data;
        }

        //登錄訪問
        [Route("getData2"), HttpPost]
        public JObject getData2([FromBody] JObject data)
        {
            return data;
        }

    }

到了這里,關(guān)于asp.net web api 用戶身份驗(yàn)證的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Asp.Net Core 6 Cookie 的身份驗(yàn)證策略

    Asp.Net Core 6 Cookie 的身份驗(yàn)證策略

    參考文獻(xiàn): http://www.js-code.com/xindejiqiao/xindejiqiao_274882.html https://www.cnblogs.com/xiaoxiaotank/p/15811749.html 編寫代碼過程中不理解的代碼可參考上面的文獻(xiàn) 首先需要配置你的Program.cs,代碼如下: 然后開啟中間件 ?創(chuàng)建一個AuthenticationMiddleware.cs類 在寫登錄的地方去使用 ?最后給你的控制

    2024年02月16日
    瀏覽(30)
  • 在ASP.NET Core中輕松使用JwtBeare進(jìn)行身份驗(yàn)證

    在ASP.NET Core中輕松使用JwtBeare進(jìn)行身份驗(yàn)證

    JwtBearer簡介 首先要搞清楚什么是JwtBearer,JwtBearer是ASP.NET Core的OAuth 2.0 JWT Bearer身份驗(yàn)證提供程序。它提供了對JWT令牌進(jìn)行驗(yàn)證的功能,然后允許將令牌中包含的聲明(claims)用于用戶身份驗(yàn)證和授權(quán)控制。 Json Web Token (JWT)是一種Web標(biāo)準(zhǔn),用于在不同系統(tǒng)間傳輸數(shù)據(jù)。JWT是一種

    2024年02月04日
    瀏覽(20)
  • ASP.NET Core 中的兩種 Web API

    ASP.NET Core 有兩種創(chuàng)建 RESTful Web API 的方式: 基于 Controller,使用完整的基于ControllerBase的基類定義接口endpoints。 基于 Minimal APIs,使用Lambda表達(dá)式定義接口 endpoints。 基于 Controller 的 Web API 可以使用構(gòu)造函數(shù)注入,或者屬性注入,遵循面向?qū)ο竽J健?基于 Minimal APIs 的 Web API 通

    2024年02月09日
    瀏覽(34)
  • ASP.NET Core 中基于 Minimal APIs 的Web API

    Minimal APIs 是ASP.NET Core中快速構(gòu)建 REST API 的方式,可以用最少的代碼構(gòu)建全功能的REST API。比如下面三行代碼: 可以實(shí)現(xiàn)在請求網(wǎng)站根目錄結(jié)點(diǎn)的時候,返回\\\"Hello World!\\\"。 這種方式的Web API可以用于構(gòu)建微服務(wù),極簡功能的網(wǎng)站。 下面代碼,將幾個 HTTP 請求的 url映射到 Lambda

    2024年02月10日
    瀏覽(25)
  • 2.1 .net 8 ASP.NET Core Web API - Controller詳解

    2.1 .net 8 ASP.NET Core Web API - Controller詳解

    書接上回,上節(jié)我們留了幾個問題,即: 1、接口Hello的名字究竟怎么來的? 2、我們?nèi)绻氚呀涌诟某善渌拿Q,應(yīng)該怎么做? 3、我們繼承ControllerBase,以及[Route(“[controller]”)]屬性,又是分別起到什么作用? 需要解決以上幾個問題,我們就要繼續(xù)深入研究Controller相關(guān)的

    2024年02月20日
    瀏覽(21)
  • ASP.NET Core Web API 流式返回,逐字顯示

    ASP.NET Core Web API 流式返回,逐字顯示

    Websocket、SSE(Server-Sent Events)和長輪詢(Long Polling)都是用于網(wǎng)頁和服務(wù)端通信的技術(shù)。 Websocket是一種全雙工通信協(xié)議,能夠?qū)崿F(xiàn)客戶端和服務(wù)端之間的實(shí)時通信。它基于TCP協(xié)議,并且允許服務(wù)器主動向客戶端推送數(shù)據(jù),同時也允許客戶端向服務(wù)器發(fā)送數(shù)據(jù)。 SSE是一種單向

    2023年04月23日
    瀏覽(21)
  • ASP.NET Core 中基于 Controller 的 Web API

    ASP.NET Core 中基于 Controller 的 Web API

    客戶端發(fā)送Http請求,Contoller響應(yīng)請求,并從數(shù)據(jù)庫讀取數(shù)據(jù),序列化數(shù)據(jù),然后通過 Http Response返回序列化的數(shù)據(jù)。 Web API 的所有controllers 一般繼承于 ControllerBase 類,而不是Controller 類。 因?yàn)?Controller 類也繼承自ControllerBase 類,但是支持views,而API一般不需要這個功能。 Co

    2024年02月10日
    瀏覽(29)
  • 在 ASP.NET Core Web API 中處理 Patch 請求

    PUT 和 PATCH 方法用于更新現(xiàn)有資源。 它們之間的區(qū)別是,PUT 會替換整個資源,而 PATCH 僅指定更改。 在 ASP.NET Core Web API 中,由于 C# 是一種靜態(tài)語言( dynamic 在此不表),當(dāng)我們定義了一個類型用于接收 HTTP Patch 請求參數(shù)的時候,在 Action 中無法直接從實(shí)例中得知客戶端提供了哪

    2024年02月04日
    瀏覽(97)
  • ASP.NET Core 的 Web Api 實(shí)現(xiàn)限流 中間件

    ASP.NET Core 的 Web Api 實(shí)現(xiàn)限流 中間件

    Microsoft.AspNetCore.RateLimiting ?中間件提供速率限制(限流)中間件。 它是.NET 7 以上版本才支持的中間件,剛看了一下,確實(shí)挺好用,下面給大家簡單介紹一下: RateLimiterOptionsExtensions?類提供下列用于限制速率的擴(kuò)展方法:????? 固定窗口限制器 滑動窗口限制器 令牌桶限

    2024年01月17日
    瀏覽(18)
  • ASP.NET WEB API通過SugarSql連接MySQL數(shù)據(jù)庫

    ASP.NET WEB API通過SugarSql連接MySQL數(shù)據(jù)庫

    注意:VS2022企業(yè)版可以,社區(qū)版可能存在問題。實(shí)體名稱和字段和數(shù)據(jù)庫中的要一致。 1、創(chuàng)建項(xiàng)目,安裝SqlSugarCore、Pomelo.EntityFrameworkCore.MySql插件 2、文件結(jié)構(gòu) 2、appsettings.json { “Logging”: { “LogLevel”: { “Default”: “Information”, “Microsoft.AspNetCore”: “Warning” } }, “Allowed

    2024年02月12日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包