private async Task <string> GetUsers() { var disco = await DiscoveryClient.GetAsync("https://localhost:44344/"); var tokenClient = new TokenClient(disco.TokenEndpoint, "webApp", "secret"); var tokenResponse = await tokenClient.RequestClientCredentialsAsync("userApi"); var result = default(string); if (tokenResponse.IsError) { result = "Error....could not get access token for API"; } else { using (var client = new HttpClient()) { client.SetBearerToken(tokenResponse.AccessToken); var response = await client.GetAsync("https://localhost:44377/api/users"); if (response.IsSuccessStatusCode) { result = await response.Content.ReadAsStringAsync(); } else { result = "Error... could not retrieve users"; } } } tokenClient.Dispose(); return(result); }
protected virtual void Dispose(bool disposing) { if (!_disposed && disposing) { _tokenClient.Dispose(); _httpClient.Dispose(); _disposed = true; } }
protected override void Dispose(bool disposing) { if (disposing) { _httpMessageInvoker.Dispose(); _tokenClient.Dispose(); } base.Dispose(disposing); }
public void Dispose() { _tokenClient?.Dispose(); }