Beispiel #1
0
        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));
            }
        }
Beispiel #2
0
        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));
            }
        }