private async Task <QuickFile> SendHttpFile(Func <HttpRequestMessage> requestFunc) { try { var request = requestFunc(); await SetAuthHeader(request, false); var response = await _httpClientFactory().SendAsync(request); if (response.StatusCode == HttpStatusCode.Unauthorized) { request = requestFunc(); await SetAuthHeader(request, true); response = await _httpClientFactory().SendAsync(request); } return(await QuickFile.FromMessage(response)); } catch (Exception ex) { return(new QuickFile() { Errors = new List <ApiError>() { new ApiError() { ErrorMessage = GetRecursiveErrorMessage(ex) } } }); } }
protected async Task <QuickFile> GetFile(string url) { await SetInitialToken(); var response = await _client.GetAsync(url); if (response.StatusCode == HttpStatusCode.Unauthorized) { await GetToken(); response = await _client.GetAsync(url); } return(await QuickFile.FromMessage(response)); }