Модераторы: gambit, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с HttpWebRequest и HttpWebResponse 
:(
    Опции темы
graph
Дата 26.6.2009, 15:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 15.11.2008

Репутация: нет
Всего: нет



необходимо авторизоваться на сайте для этого использовал HttpWebRequest и HttpWebResponse...но на сайт войти не могу. Не могу понять в чем проблема!?
сам код:
Код

HttpWebResponse result = null;
HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("http://www.people.md/");
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
byte[] SomeBytes = null;
string FormParams = "username=" + textBox1.Text + "&password=" + textBox2.Text;
SomeBytes = Encoding.GetEncoding(1251).GetBytes(FormParams);
req.ContentLength = SomeBytes.Length;
Stream newStream = req.GetRequestStream();
newStream.Write(SomeBytes, 0, SomeBytes.Length);
newStream.Close();
result = (HttpWebResponse)req.GetResponse();
string[] cookieVal = null;
if (result.Headers["Set-Cookie"] != null)
cookieVal = result.Headers["Set-Cookie"].Split(new char[] { ',' });
Stream ReceiveStream = result.GetResponseStream();
Encoding encode = Encoding.GetEncoding(1251);
StreamReader sr = new StreamReader(ReceiveStream, encode);
string answer = sr.ReadToEnd();
sr.Close();
result.Close();
CookieContainer cookie = new CookieContainer();
foreach (string cook in cookieVal)
{
string[] cookie1 = cook.Split(new char[] { ';' });
if (cookie1.Length < 4)
continue;
cookie.Add(new Cookie(cookie1[0].Split(new char[] { '=' })[0], cookie1[0].Split(new char[] { '=' 
})[1],
cookie1[1].Split(new char[] { '=' })[1], cookie1[2].Split(new char[] { '=' })[1]));
}
HttpWebRequest req1 = (HttpWebRequest)HttpWebRequest.Create("http://www.people.md/");
req1.UserAgent = "Mozilla/4.0+(compatible;+MSIE+5.01;+Windows+NT+5.0)";
//Вот оно - важное дополнение.
req1.CookieContainer = cookie;
req1.Method = "GET";
HttpWebResponse result1 = (HttpWebResponse)req1.GetResponse();
Stream ReceiveStream1 = result1.GetResponseStream();
sr = new StreamReader(ReceiveStream1, encode);
string html = sr.ReadToEnd();
textBox3.Text = html;
result1.Close();


Модератор: Используйте тег code

Это сообщение отредактировал(а) Partizan - 26.6.2009, 15:40
PM MAIL   Вверх
dazy
Дата 26.6.2009, 18:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 15.9.2006

Репутация: нет
Всего: 8



А вы под fiddler'om посмотрите в чем разница между регистрацией через браузер и через софт.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.0365 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.