登录刷新token优化

This commit is contained in:
tongfei
2023-12-08 17:09:55 +08:00
parent 1348cef17f
commit b47eaa5dc4
4 changed files with 29 additions and 6 deletions

View File

@@ -2912,6 +2912,15 @@
登录服务接口 登录服务接口
</summary> </summary>
</member> </member>
<member name="M:WMS.Web.Domain.IService.Public.ILoginService.CreateToken(WMS.Web.Core.Dto.Login.UserInfoDto,WMS.Web.Core.Dto.Login.Temp.LoginTempDto,System.String)">
<summary>
创建token
</summary>
<param name="data"></param>
<param name="tempDto"></param>
<param name="NewToken"></param>
<returns></returns>
</member>
<member name="M:WMS.Web.Domain.IService.Public.ILoginService.GetUserInfoAsync(System.String)"> <member name="M:WMS.Web.Domain.IService.Public.ILoginService.GetUserInfoAsync(System.String)">
<summary> <summary>
得到单点用户信息 得到单点用户信息

View File

@@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using WMS.Web.Core.Dto.Login; using WMS.Web.Core.Dto.Login;
using WMS.Web.Core.Dto.Login.Temp;
using WMS.Web.Core.Internal.Results; using WMS.Web.Core.Internal.Results;
namespace WMS.Web.Domain.IService.Public namespace WMS.Web.Domain.IService.Public
@@ -12,6 +13,16 @@ namespace WMS.Web.Domain.IService.Public
/// </summary> /// </summary>
public interface ILoginService public interface ILoginService
{ {
/// <summary>
/// 创建token
/// </summary>
/// <param name="data"></param>
/// <param name="tempDto"></param>
/// <param name="NewToken"></param>
/// <returns></returns>
Task<AccessTokenDto> CreateToken(UserInfoDto data, LoginTempDto tempDto, string NewToken);
/// <summary> /// <summary>
/// 得到单点用户信息 /// 得到单点用户信息
/// </summary> /// </summary>

View File

@@ -52,7 +52,7 @@ namespace WMS.Web.Domain.Services.Public
/// <param name="tempDto"></param> /// <param name="tempDto"></param>
/// <param name="NewToken"></param> /// <param name="NewToken"></param>
/// <returns></returns> /// <returns></returns>
private async Task<AccessTokenDto> CreateToken(UserInfoDto data, LoginTempDto tempDto, string NewToken) public async Task<AccessTokenDto> CreateToken(UserInfoDto data, LoginTempDto tempDto, string NewToken)
{ {
return await Task.Run(() => return await Task.Run(() =>
{ {

View File

@@ -100,11 +100,13 @@ namespace WMS.Web.Repositories.DependencyInjection
{ {
_logger.LogInformation("RefreshToken:我在刷新登录--2"); _logger.LogInformation("RefreshToken:我在刷新登录--2");
var refreshtokeninfo = RefreshToken(logininfo.TokenInfo.Token, logininfo.TokenInfo.RefreshToken, loginService); var refreshtokeninfo = RefreshToken(logininfo.TokenInfo.Token, logininfo.TokenInfo.RefreshToken, loginService);
var info = _redisClientService.GetStringKey<LoginInDto>($"wms_login_{token}");
if (!refreshtokeninfo) _logger.LogInformation("RefreshToken:我在刷新登录--完成:" + info.UserInfo.Nickname);
{ //刷新token后不能删除_redis用户缓存
RemoveRedisLoginInfo(token); //if (!refreshtokeninfo)
} //{
// RemoveRedisLoginInfo(token);
//}
} }
//3.验证检查是否有黑名单的token缓存 //3.验证检查是否有黑名单的token缓存
string blacktoken = _redisClientService.GetStringKey($"wms_black_token_{logininfo.UserInfo.UcId}"); string blacktoken = _redisClientService.GetStringKey($"wms_black_token_{logininfo.UserInfo.UcId}");
@@ -156,6 +158,7 @@ namespace WMS.Web.Repositories.DependencyInjection
} }
} }
/// <summary> /// <summary>
/// 刷新token /// 刷新token
/// </summary> /// </summary>