Зависание при работе с HttpWebRequest при обращении к некоторым сайтам - C#

Узнай цену своей работы

Формулировка задачи:

При запуске данного кода возникает зависание программы во время инициализации System.Net.HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Целый день убил на решение этого вопроса, Гоша не помог мне с этим вопросом. Самое интересное что при смене URI на другой сайт все работает на ура. Если делать POST запрос с PHP все работает тоже хорошо. Помогите с решением данного вопроса.
 public string HttpPost()
        {
            string URI = "http://vashkatsi.zeekrewards.com/";
            string Parameters = "";
            System.Net.HttpWebRequest req = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(URI);          
            req.ContentType = "application/x-www-form-urlencoded";
            req.Method = "POST";
            byte[] bytes = System.Text.Encoding.ASCII.GetBytes(Parameters);
            req.ContentLength = bytes.Length;
            req.CookieContainer = cookies;
            System.IO.Stream os = req.GetRequestStream();
            if (!String.IsNullOrEmpty(sCookies))
            {
                req.Headers.Add(HttpRequestHeader.Cookie, sCookies);
            }
            int a = req.CookieContainer.Count;
            os.Write(bytes, 0, bytes.Length); 
            os.Close();    
            try
            {   
                //Вот здесь зависает прога
                System.Net.HttpWebResponse resp = (HttpWebResponse)req.GetResponse();  

                sCookies = String.IsNullOrEmpty(resp.Headers["Set-Cookie"]) ? "" : resp.Headers["Set-Cookie"];
                if (resp == null)
                {
                    resp.Close();
                    return null;                
                }
                System.IO.StreamReader sr = new System.IO.StreamReader(resp.GetResponseStream());
                string text = sr.ReadToEnd().Trim();
                resp.Close();
                return text;
            }
            catch (Exception e)
            {
                MessageBox.Show(e.ToString());
                return null;
            }
        }

Решение задачи: «Зависание при работе с HttpWebRequest при обращении к некоторым сайтам»

textual
Листинг программы
Request
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Charset:windows-1251,utf-8;q=0.7,*;q=0.3
Accept-Encoding:gzip,deflate,sdch
Accept-Language:ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
Cache-Control:max-age=0
Connection:keep-alive
Host:vashkatsi.zeekrewards.com
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.79 Safari/537.1
 
 
Response
Cache-Control:private
Content-Length:1001
Content-Type:text/html
Date:Fri, 17 Aug 2012 19:04:40 GMT
Server:Microsoft-IIS/7.5
Set-Cookie:ASPSESSIONIDSQSQRARQ=FAEGGGNCDOKCHPLJLODFFHGK; path=/
X-Powered-By:ASP.NET

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4 из 5
Похожие ответы