Пример #1
0
        protected virtual async Task <DadosWebServiceResponse <T> > Post <T, TEnv>(string page, TEnv Env)
            where T : class where TEnv : class
        {
            /*Requests baseados em json*/
            DadosWebServiceResponse <T> ret = new DadosWebServiceResponse <T>(null, 0);

            using (var client = new HttpClient())
            {
                var jsonContent = JsonConvert.SerializeObject(Env);
                BaseHeader(EMediaType.Requestjson, client);

                var contentString = new StringContent(jsonContent, Encoding.UTF8, EMediaType.Requestjson.ObterAtributoDescricao());
                contentString.Headers.ContentType = new
                                                    MediaTypeHeaderValue(EMediaType.Requestjson.ObterAtributoDescricao());


                HttpResponseMessage response = await client.PostAsync(page, contentString);

                string retornoBody = await AtualizarBodyStatudCode(ret, response);

                if (response.IsSuccessStatusCode)
                {
                    ret = new DadosWebServiceResponse <T>(statusCode: (int)response.StatusCode,
                                                          dadosRetorno: JsonConvert.DeserializeObject <T>(retornoBody));
                }
            }
            return(ret);
        }
Пример #2
0
        async Task <string> AtualizarBodyStatudCode <T>(DadosWebServiceResponse <T> ret, HttpResponseMessage response) where T : class
        {
            ret.SetStatusCode((int)response.StatusCode);
            string retornoBody = await response.Content.ReadAsStringAsync();

            ObterResponseAsync(retornoBody, (int)response.StatusCode);
            return(retornoBody);
        }
Пример #3
0
        protected virtual async Task <DadosWebServiceResponse <T> > Get <T>(string page) where T : class
        {
            DadosWebServiceResponse <T> ret = new DadosWebServiceResponse <T>(null, 0);

            using (var client = new HttpClient())
            {
                BaseHeader(EMediaType.Requestjson, client);

                HttpResponseMessage response = await client.GetAsync(page);

                string retornoBody = await AtualizarBodyStatudCode(ret, response);

                if (response.IsSuccessStatusCode)
                {
                    ret = new DadosWebServiceResponse <T>(statusCode: (int)response.StatusCode,
                                                          dadosRetorno: JsonConvert.DeserializeObject <T>(retornoBody));
                }
            }
            return(ret);
        }