public async Task <T> Get <T>(string ApiName, List <string> Params, AuthenObject Authen) { API <T> APIInstance = new API <T>(ApiName, Params); APIInstance.Method = "GET"; HttpRequestMessage HttpRequestMessageInstance = new HttpRequestMessage(); HttpRequestMessageInstance.Method = HttpMethod.Get; if (Authen.IsAuthen) { HttpRequestMessageInstance.Headers.Add("Token", Authen.Token); } string Host = this.GetRealUri(this.HttpClientInstance.BaseAddress.OriginalString, APIInstance.URI); HttpRequestMessageInstance.RequestUri = new Uri(Host); var HttpResponse = await this.HttpClientInstance.SendAsync(HttpRequestMessageInstance); bool success = HttpResponse.IsSuccessStatusCode; if (success) { string Result = await HttpResponse.Content.ReadAsStringAsync(); var ResultObject = JsonConvert.DeserializeObject <SingleResult <T> >(Result); T LastResult = ResultObject.Result; return(LastResult); } else { throw new CustomHttpResponseException(new CustomHttpResponseException.ExceptionData((int)HttpResponse.StatusCode, HttpResponse.ReasonPhrase)); } }
public async Task <U> Put <T, U>(string ApiName, T Data, List <string> Params, AuthenObject Authen) { API <T> APIInstance = new API <T>(ApiName, Params); APIInstance.Method = "PUT"; APIInstance.Data = Data; HttpContent HtppContentInstance = new StringContent(JsonConvert.SerializeObject(APIInstance.Data), Encoding.UTF8, "application/json"); HttpRequestMessage HttpRequestMessageInstance = new HttpRequestMessage(); HttpRequestMessageInstance.Method = HttpMethod.Put; if (Authen.IsAuthen) { HttpRequestMessageInstance.Headers.Add("Token", Authen.Token); } HttpRequestMessageInstance.Content = HtppContentInstance; string Host = this.GetRealUri(this.HttpClientInstance.BaseAddress.OriginalString, APIInstance.URI); HttpRequestMessageInstance.RequestUri = new Uri(Host); var HttpResponse = await this.HttpClientInstance.SendAsync(HttpRequestMessageInstance); bool success = HttpResponse.IsSuccessStatusCode; if (success) { string Result = await HttpResponse.Content.ReadAsStringAsync(); SingleResult <U> LastResult = JsonConvert.DeserializeObject <SingleResult <U> >(Result); U ResultObject = LastResult.Result; return(ResultObject); } else { throw new CustomHttpResponseException(new CustomHttpResponseException.ExceptionData((int)HttpResponse.StatusCode, HttpResponse.ReasonPhrase)); } }