public Task <IEnumerable <ExcelViewModel> > GetDataAsync() { // How to url-encode query-string parameters properly var uri = new UriBuilderExt(new Uri(_httpClient.BaseAddress, "/api/getDataList")) //.AddParameter("checkInDate", $"{checkInDate:yyyy'-'MM'-'dd}") //.AddParameter("checkOutDate", $"{checkOutDate:yyyy'-'MM'-'dd}") .Uri; return(_httpClient.GetFromJsonAsync <IEnumerable <ExcelViewModel> >(uri)); }
public async Task <Book> FindBookByIsbn(string isbn) { _client = new HttpClient(); _client.DefaultRequestHeaders.Add("Accept", "application/json"); // need JWT var jwt = "Bearer " + _credentialsService.Jwt; _client.DefaultRequestHeaders.Add("Authorization", jwt); try { var values = new Dictionary <string, string> { { "isbn", isbn } }; // var url = String.Empty; //QueryHelpers.AddQueryString(EnvironmentSettings.ApiUrl + "/api/backlog/search", values); var builder = new UriBuilderExt(EnvironmentSettings.ApiUrl + "/api/backlog/search"); builder.AddParameter("isbn", isbn); var response = await _client.GetAsync(builder.Uri); var returnContent = await response.Content.ReadAsStringAsync(); if (response.IsSuccessStatusCode) { return(JsonConvert.DeserializeObject <Book>(returnContent)); } var error = JsonConvert.DeserializeObject <ApiError>(returnContent); throw new Exception(error.message); } catch (HttpRequestException e) { Debug.WriteLine(e.Message); throw new Exception($"HTTP errors: {e.Message}"); } }