using HiTeachCE.Extension; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using System; using System.Collections.Generic; using System.Linq; using System.Security.Claims; using System.Threading.Tasks; using TEAMModelOS.SDK.Context.Constant.Common; using TEAMModelOS.SDK.Extension.JwtAuth.Models; namespace HiTeachCE.Controllers { public class BaseController : Controller { public string GetLoginUser(string claimType) { var tokenHeader = ""; HttpRequest request = HttpContext.Request; if (request.Headers.ContainsKey(Constants.AUTHORIZATION)) { tokenHeader = request.Headers[Constants.AUTHORIZATION]; //tokenHeader = tokenHeader.ToString().Substring("Bearer ".Length).Trim(); tokenHeader = tokenHeader.Replace("Bearer ", ""); } if (request.Query.ContainsKey(Constants.ACCESS_TOKEN)) { tokenHeader = request.Query[Constants.ACCESS_TOKEN]; tokenHeader = tokenHeader.Trim(); } if (string.IsNullOrEmpty(tokenHeader)) { return null; } ClaimModel claimModel = JwtHelper.SerializeJWT(tokenHeader); // claimModel.Claim.TryGetValue(claimType, out var claimValue); string claimValues = ""; foreach (Claim claim in claimModel.Claims) { if (claim.Type.Equals(claimType)) { claimValues= claimValues+claim.Value+","; } } claimValues = claimValues.Substring(0, claimValues.Length - 1); return claimValues; } } }