Ejemplo n.º 1
0
        public async Task <Kit.Services.Web.ResponseResult> PostAsBody(byte[] byteArray, string method, Dictionary <string, string> query, string mediaType = "application/octet-stream", params string[] parameters)
        {
            Kit.Services.Web.ResponseResult result = new Kit.Services.Web.ResponseResult
            {
                HttpStatusCode = HttpStatusCode.Unused
            };
            string geturl = String.Empty;

            try
            {
                geturl = BuildUrl(method, query, parameters);
                var body = new ByteArrayContent(byteArray);
                body.Headers.ContentType = MediaTypeHeaderValue.Parse(mediaType);
                HttpResponseMessage message = await HttpClient.PostAsync(geturl, body);

                result.HttpStatusCode = message.StatusCode;
                result.Response       = await message.Content.ReadAsStringAsync();



                return(result);
            }
            catch (Exception ex)
            {
                Log.Logger.Error(ex, $"GET: {geturl}");
                result.Response = "ERROR";
                return(result);
            }
        }
Ejemplo n.º 2
0
        public async Task <Stream> DownloadFile(string method, Dictionary <string, string> query, params string[] parameters)
        {
            Kit.Services.Web.ResponseResult result = new Kit.Services.Web.ResponseResult
            {
                HttpStatusCode = HttpStatusCode.Unused
            };
            string geturl = String.Empty;

            try
            {
                geturl = BuildUrl(method, query, parameters);

                using (var httpResponse = await HttpClient.GetAsync(geturl))
                {
                    if (httpResponse.StatusCode == HttpStatusCode.OK)
                    {
                        return(new MemoryStream(await httpResponse.Content.ReadAsByteArrayAsync()));
                    }
                    else
                    {
                        //Url is Invalid
                        return(null);
                    }
                }
                //client.DefaultRequestHeaders.Add("Accept", "application/json");
                //result.Response = await client.GetStringAsync(GetUrl);
                //result.HttpStatusCode = HttpStatusCode.OK;
            }
            catch (Exception ex)
            {
                Log.Logger.Error(ex, $"GET: {geturl}");
                result.Response = "ERROR";
                return(null);
            }
        }
Ejemplo n.º 3
0
        public async Task <Kit.Services.Web.ResponseResult> Post(string method,
                                                                 Dictionary <string, string> query, params string[] parameters)
        {
            Kit.Services.Web.ResponseResult result = new Kit.Services.Web.ResponseResult
            {
                HttpStatusCode = HttpStatusCode.Unused
            };
            string geturl = String.Empty;

            try
            {
                geturl = BuildUrl(method, query, parameters);
                HttpResponseMessage message = await HttpClient.PostAsync(geturl, null);

                result.HttpStatusCode = message.StatusCode;
                result.Response       = await message.Content.ReadAsStringAsync();



                return(result);
            }
            catch (Exception ex)
            {
                Log.Logger.Error(ex, $"GET: {geturl}");
                result.Response = "ERROR";
                return(result);
            }
        }
Ejemplo n.º 4
0
        public async Task <Kit.Services.Web.ResponseResult> GET(string metodo, int?timeOut = null, Dictionary <string, string> query = null, params string[] parameters)
        {
            await Task.Yield();

            Kit.Services.Web.ResponseResult result = new Kit.Services.Web.ResponseResult
            {
                HttpStatusCode = HttpStatusCode.Unused
            };
            string GetUrl       = BuildUrl(metodo, query, parameters);
            string responseText = string.Empty;

            try
            {
                if (timeOut is int tt)
                {
                    HttpClient.Timeout = TimeSpan.FromMilliseconds(tt);
                }
                HttpClient.DefaultRequestHeaders.Add("Accept", "application/json");
                result.Response = await HttpClient.GetStringAsync(GetUrl);

                result.HttpStatusCode = HttpStatusCode.OK;
            }
            catch (WebException ex)
            {
                Log.Logger.Error(ex, $"GET: {this.Url}");
                result.HttpStatusCode = (HttpStatusCode)ex.Status;
                result.Extra          = ex.Message;
                if (ex.Status == WebExceptionStatus.ProtocolError && ex.Response != null)
                {
                    using (StreamReader reader = new StreamReader(((HttpWebResponse)ex.Response).GetResponseStream()))
                    {
                        responseText = reader.ReadToEnd();
                    }
                }
                result.Response = "ERROR";
                return(result);
            }
            catch (Exception ex)
            {
                Log.Logger.Error(ex, $"GET: {GetUrl}");
                result.Response = "ERROR";
                result.Extra    = ex.Message;
            }
            return(result);
        }