zoukankan      html  css  js  c++  java
  • asp.net core 3.1 ClaimsPrincipal User 灵活使用

    asp.net core  3.1 登录用的 ClaimsPrincipal User ,一般只有在 controller里才可以使用;但是为了方便抽出公共方法,则需要在单独的类里使用到 User.这时候,就需要先获取到HttpContext才可以用User。代码如下:

    AppHttpContext.Current.User

    详细代码如下:

        /// <summary>
        /// 沐雪多商户版小程序商城系统
        /// </summary>
        public class ControllerCommFun
        {
            public ControllerCommFun()
            {
    
            }
    
            public TenantLoginResp CurrentUser
            {
                get
                {
                     
                    TenantLoginResp currentUser = new TenantLoginResp();
                    if (AppHttpContext.Current.User.Identity.IsAuthenticated)
                    {
                        var claimIdentity = (ClaimsIdentity)AppHttpContext.Current.User.Identity;
                        string key = claimIdentity.FindFirst("tenant_tokenid").Value;
                        currentUser.id = LoginCredentials.TenantDecodeRedisKeyOfUserId(key);
    
                        currentUser.user_name = claimIdentity.FindFirst("tenant_user_name").Value;
    
                        currentUser.using_type = claimIdentity.FindFirst("tenant_using_type").Value;
                        currentUser.role_id = ConvertHelper.LongParse(claimIdentity.FindFirst("tenant_role_id").Value, 0);
    
                    }
                    return currentUser;
                }
            }
    
        }
  • 相关阅读:
    使用Python往手机发送短信(基于twilio模块)
    春&风
    故乡
    非常完美
    风 记忆
    风誓
    MATLAB的循环结构
    你要的快乐
    夕颜
    MATLAB的基本元素
  • 原文地址:https://www.cnblogs.com/puzi0315/p/13341915.html
Copyright © 2011-2022 走看看