上下文对象获取用户id扩展
This commit is contained in:
@@ -110,7 +110,7 @@ namespace Yi.Framework.ApiMicroservice.Controllers
|
|||||||
public async Task<Result> GetUserAllInfo()
|
public async Task<Result> GetUserAllInfo()
|
||||||
{
|
{
|
||||||
//通过鉴权jwt获取到用户的id
|
//通过鉴权jwt获取到用户的id
|
||||||
var userId = HttpContext.GetCurrentUserEntityInfo(out _).Id;
|
var userId = HttpContext.GetUserIdInfo();
|
||||||
var data = await _iUserService.GetUserAllInfo(userId);
|
var data = await _iUserService.GetUserAllInfo(userId);
|
||||||
data.Menus.Clear();
|
data.Menus.Clear();
|
||||||
return Result.Success().SetData(data);
|
return Result.Success().SetData(data);
|
||||||
@@ -123,7 +123,7 @@ namespace Yi.Framework.ApiMicroservice.Controllers
|
|||||||
[HttpGet]
|
[HttpGet]
|
||||||
public async Task<Result> GetRouterInfo()
|
public async Task<Result> GetRouterInfo()
|
||||||
{
|
{
|
||||||
var userId = HttpContext.GetCurrentUserEntityInfo(out _).Id;
|
var userId = HttpContext.GetUserIdInfo();
|
||||||
var data = await _iUserService.GetUserAllInfo(userId);
|
var data = await _iUserService.GetUserAllInfo(userId);
|
||||||
|
|
||||||
//将后端菜单转换成前端路由,组件级别需要过滤
|
//将后端菜单转换成前端路由,组件级别需要过滤
|
||||||
@@ -144,7 +144,7 @@ namespace Yi.Framework.ApiMicroservice.Controllers
|
|||||||
user.Salt = null;
|
user.Salt = null;
|
||||||
|
|
||||||
//修改需要赋值上主键哦
|
//修改需要赋值上主键哦
|
||||||
user.Id = HttpContext.GetCurrentUserEntityInfo(out _).Id;
|
user.Id = HttpContext.GetUserIdInfo();
|
||||||
return Result.Success().SetStatus(await _iUserService._repository.UpdateIgnoreNullAsync(user));
|
return Result.Success().SetStatus(await _iUserService._repository.UpdateIgnoreNullAsync(user));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -156,7 +156,7 @@ namespace Yi.Framework.ApiMicroservice.Controllers
|
|||||||
[HttpPut]
|
[HttpPut]
|
||||||
public async Task<Result> UpdatePassword(UpdatePasswordDto dto)
|
public async Task<Result> UpdatePassword(UpdatePasswordDto dto)
|
||||||
{
|
{
|
||||||
long userId = HttpContext.GetCurrentUserEntityInfo(out _).Id;
|
long userId = HttpContext.GetUserIdInfo();
|
||||||
|
|
||||||
if (await _iUserService.UpdatePassword(dto, userId))
|
if (await _iUserService.UpdatePassword(dto, userId))
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -26,13 +26,19 @@ namespace Yi.Framework.WebCore
|
|||||||
return "XMLHttpRequest".Equals(header);
|
return "XMLHttpRequest".Equals(header);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static long GetUserIdInfo(this HttpContext httpContext)
|
||||||
|
{
|
||||||
|
return Convert.ToInt64(httpContext.User.Claims.FirstOrDefault(u => u.Type== JwtRegisteredClaimNames.Sid));
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 基于HttpContext,当前鉴权方式解析,获取用户信息
|
/// 基于HttpContext,当前鉴权方式解析,获取用户信息
|
||||||
/// 现在使用redis作为缓存,不需要将菜单存放至jwt中了
|
/// 现在使用redis作为缓存,不需要将菜单存放至jwt中了
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="httpContext"></param>
|
/// <param name="httpContext"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public static UserEntity GetCurrentUserEntityInfo(this HttpContext httpContext, out List<Guid> menuIds)
|
public static UserEntity GetUserEntityInfo(this HttpContext httpContext, out List<Guid> menuIds)
|
||||||
{
|
{
|
||||||
IEnumerable<Claim> claimlist = null;
|
IEnumerable<Claim> claimlist = null;
|
||||||
long resId = 0;
|
long resId = 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user