Пример #1
0
        private string GetResponse(HttpWebRequest request, string requestUrl, bool throwOnHttpErrorCode)
        {
            string content;

            HttpWebResponse response = null;

            try
            {
                if (throwOnHttpErrorCode)
                {
                    response = (HttpWebResponse)request.GetResponse();
                }
                else
                {
                    try
                    {
                        response = (HttpWebResponse)request.GetResponse();
                    }
                    catch (WebException ex)
                    {
                        response = (HttpWebResponse)ex.Response;
                    }
                }

                if (UseCookies)
                {
                    request.FixCookies(response);
                    if (Cookies == null)
                    {
                        Cookies = response.Cookies;
                    }
                    else
                    {
                        Cookies.Add(response.Cookies);
                    }
                }

                using (Stream receiveStream = response.GetResponseStream())
                {
                    //receiveStream.ReadTimeout = Timeout;
                    //receiveStream.WriteTimeout = Timeout;
                    using (StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8))
                    {
                        content = readStream.ReadToEnd();
                    }
                }
            }
            finally
            {
                if (response != null)
                {
                    response.Close();
                }
            }

            return(content);
        }
        private async Task <string> GetResponseAsync(HttpWebRequest request, string requestUrl, bool throwOnHttpErrorCode)
        {
            string content;

            HttpWebResponse response = null;

            try
            {
                if (throwOnHttpErrorCode)
                {
                    response = (HttpWebResponse)(await request.GetResponseAsync());
                }
                else
                {
                    try
                    {
                        response = (HttpWebResponse)(await request.GetResponseAsync());
                    }
                    catch (WebException ex)
                    {
                        response = (HttpWebResponse)ex.Response;
                    }
                }

                if (UseCookies)
                {
                    request.FixCookies(response);
                    if (Cookies == null)
                    {
                        Cookies = response.Cookies;
                    }
                    else
                    {
                        Cookies.Add(response.Cookies);
                    }
                }
                content = response.GetContent();
            }
            finally
            {
                if (response != null)
                {
                    response.Close();
                }
            }

            return(content);
        }