public async Task InitializeAsync() { await using var container = new Container(); var http = container.Resolve <IHttpClientFactory>().CreateClient("GW2SDK"); var request = new CreateSubtokenRequest(ConfigurationManager.Instance.ApiKeyFull); using var response = await http.SendAsync(request); response.EnsureSuccessStatusCode(); CreatedSubtoken = await response.Content.ReadAsStringAsync(); }
public async Task <CreatedSubtoken> CreateSubtoken( string?accessToken, IReadOnlyCollection <Permission>?permissions = null, DateTimeOffset?absoluteExpirationDate = null, IReadOnlyCollection <string>?urls = null) { var request = new CreateSubtokenRequest(accessToken, permissions, absoluteExpirationDate, urls); using var response = await _http.SendAsync(request).ConfigureAwait(false); response.EnsureSuccessStatusCode(); var json = await response.Content.ReadAsStringAsync().ConfigureAwait(false); var dto = new CreatedSubtoken(); JsonConvert.PopulateObject(json, dto, Json.DefaultJsonSerializerSettings); return(dto); }