public void GetToken(string Message) { ClientAndSecretData clientAndSecretData = Utility.JsonHelper.FromJson <ClientAndSecretData>(Message); try { var accessToken = HttpClientHelper.GetAccessToken(GlobalData.TokenUri, clientAndSecretData.ClientId, clientAndSecretData.ClientSecret, loginUser.UserName, loginUser.PassWord).Result; if (String.IsNullOrEmpty(accessToken)) { Message = "未能获取到Token!请与管理员联系!"; } else { GlobalData.AccessTocken = accessToken; } } catch (Exception ex) { Utility.LogHelper.Error("获取Token信息异常!", ex); } }
public async Task <IHttpActionResult> Login(LoginInfo loginInfo) { Logger.Info("{0}开始登陆", loginInfo.UserName); var result = await IdentityContract.Login(loginInfo, false); OperationResult createClientResult = new OperationResult(); OperationResult createClientSecretResult = new OperationResult(); if (result.Successed) { OAuthClientStore oAuthClientStore = ServiceProvider.GetService <OAuthClientStore>(); OAuthClientRefreshTokenStore oAuthClientRefreshTokenStore = ServiceProvider.GetService <OAuthClientRefreshTokenStore>(); OAuthClient oAuthClient = new OAuthClient(); OAuthClientInputDto clientDto = new OAuthClientInputDto() { Name = loginInfo.UserName, OAuthClientType = OAuthClientType.Application, Url = "http://localhost:13800/", LogoUrl = "http://localhost:13800/", RedirectUrl = "http://localhost:13800/" }; try { createClientResult = await oAuthClientStore.CreateClient(clientDto); } catch (Exception ex) { Logger.Error("CreateClient错误:" + ex.ToString()); } if (createClientResult.Successed) { oAuthClient = oAuthClientStore.GetOAuthClient(clientDto); OAuthClientSecretInputDto secretDto = new OAuthClientSecretInputDto() { Type = "Test Type", Remark = "Remark", ClientId = oAuthClient.Id, }; try { createClientSecretResult = await oAuthClientStore.CreateClientSecret(secretDto); } catch (Exception ex) { Logger.Error("CreateClientSecret错误:" + ex.ToString()); } if (createClientSecretResult.Successed) { OAuthClientSecret oAuthClientSecret = ClientSecretRepository.Entities.Where(x => x.Client.Id == oAuthClient.Id).FirstOrDefault(); ClientAndSecretData data = new ClientAndSecretData(); data.ClientId = oAuthClient.ClientId; data.ClientSecret = oAuthClientSecret.Value; result.Message = JsonHelper.ToJson(data); return(Json(new OperationResult(OperationResultType.Success, JsonHelper.ToJson(data), result.Data))); } else { return(Json(new OperationResult(OperationResultType.Error, "创建Client Secret失败!"))); } } else { return(Json(new OperationResult(OperationResultType.Error, "创建Client失败!"))); } } else { return(Json(result)); } }