public ResponseResult <TokenDecodeResponseDTO> Decode(TokenDecodeRequestDTO request) { TokenDecodeResponseDTO response = new TokenDecodeResponseDTO(); var app = OAuthAppCache.Get(request.Appid); if (app == null) { return(Fail <TokenDecodeResponseDTO>("无效的应用id", "0400")); } var ut = UserTokenProvider.DecryptAccessToken(request.Token); if (ut == null || !ut.Success) { return(Fail <TokenDecodeResponseDTO>("无效的token", "0400")); } if (ut.Content.AppId != app.Id) { return(Fail <TokenDecodeResponseDTO>("操作不允许", "0402")); } response = new TokenDecodeResponseDTO { Appid = ut.Content.AppId, ExpireTime = ut.Content.Expire_Time, Usercode = ut.Content.UserCode, Userid = ut.Content.UserId }; return(Success(response)); }
public override Task <TokenDecodeResponseDTO> Decode(TokenDecodeRequestDTO request, ServerCallContext context) { return(Task.Run(() => { TokenDecodeResponseDTO response = new TokenDecodeResponseDTO(); var app = OAuthAppCache.Get(request.Appid); if (app == null) { response.RetCode = "0400"; response.RetMsg = "无效的应用id"; return response; } var ut = UserTokenProvider.DecryptAccessToken(request.Token); if (ut == null || !ut.Success) { response.RetCode = "0400"; response.RetMsg = "无效的token"; return response; } if (ut.Content.AppId != app.Id) { response.RetCode = "0402"; response.RetMsg = "操作不允许"; return response; } response.RetCode = "0000"; response.RetMsg = "ok"; response.Data = new TokenDecodeResponseDTO.Types.Result { Appid = ut.Content.AppId, ExpireTime = ut.Content.Expire_Time.ToString(), Usercode = ut.Content.UserCode, Userid = ut.Content.UserId }; return response; })); }