From 8467804705615f7614c29e7ef7ac3e99f5c13a54 Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期二, 11 二月 2025 13:53:05 +0800 Subject: [PATCH] 优化WMS接口日志记录,添加接口名称和接口描述 --- 项目代码/WMS/WIDESEA_WMSServer/WIDESEA_Core/Middlewares/JwtTokenAuthMiddleware.cs | 94 +++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 94 insertions(+), 0 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Core/Middlewares/JwtTokenAuthMiddleware.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Core/Middlewares/JwtTokenAuthMiddleware.cs" new file mode 100644 index 0000000..ef95892 --- /dev/null +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_Core/Middlewares/JwtTokenAuthMiddleware.cs" @@ -0,0 +1,94 @@ +锘縰sing Microsoft.AspNetCore.Http; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using WIDESEA_Core.Authorization; +using WIDESEA_Core.HttpContextUser; + +namespace WIDESEA_Core.Middlewares +{ + /// <summary> + /// 涓棿浠� + /// 鍘熷仛涓鸿嚜瀹氫箟鎺堟潈涓棿浠� + /// 鍏堝仛妫�鏌� header token鐨勪娇鐢� + /// </summary> + public class JwtTokenAuthMiddleware + { + /// <summary> + /// + /// </summary> + private readonly RequestDelegate _next; + /// <summary> + /// + /// </summary> + /// <param name="next"></param> + public JwtTokenAuthMiddleware(RequestDelegate next) + { + _next = next; + } + + + private void PreProceed(HttpContext next) + { + //Console.WriteLine($"{DateTime.Now} middleware invoke preproceed"); + //... + } + private void PostProceed(HttpContext next) + { + //Console.WriteLine($"{DateTime.Now} middleware invoke postproceed"); + //.... + } + + /// <summary> + /// + /// </summary> + /// <param name="httpContext"></param> + /// <returns></returns> + public Task Invoke(HttpContext httpContext) + { + PreProceed(httpContext); + + + //妫�娴嬫槸鍚﹀寘鍚�'Authorization'璇锋眰澶� + if (!httpContext.Request.Headers.ContainsKey("Authorization")) + { + PostProceed(httpContext); + + return _next(httpContext); + } + //var tokenHeader = httpContext.Request.Headers["Authorization"].ToString(); + var tokenHeader = httpContext.Request.Headers["Authorization"].ToString().Replace("Bearer ", ""); + + try + { + if (tokenHeader.Length >= 128) + { + //Console.WriteLine($"{DateTime.Now} token :{tokenHeader}"); + UserInfo tm = JwtHelper.SerializeJwt(tokenHeader); + + //鎺堟潈 + //var claimList = new List<Claim>(); + //var claim = new Claim(ClaimTypes.Role, tm.Role); + //claimList.Add(claim); + //var identity = new ClaimsIdentity(claimList); + //var principal = new ClaimsPrincipal(identity); + //httpContext.User = principal; + } + + } + catch (Exception e) + { + Console.WriteLine($"{DateTime.Now} middleware wrong:{e.Message}"); + } + + + PostProceed(httpContext); + + + return _next(httpContext); + } + + } +} -- Gitblit v1.9.3