ANTICHAT.RU    VIDEO.ANTICHAT.RU    AUDIT.ANTICHAT.RU    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  

!!Куплю ДАТИНГ Базы!!! Куплю БД ДАТИНГ Сайтов!!! Куплю ДАТИНГ Отклик!!



Продвину Ваш сайт в ТОП. Робот WebEffector.

Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1331  
Старый 12.05.2012, 20:25
Аватара для Spot
Spot
Elder - Старейшина
Регистрация: 01.03.2007
Сообщения: 185
Провел на форуме:
1 неделю 2 дня

Репутация: 0 ±

По умолчанию

Цитата:
Сообщение от Hack_ERR++  
Как в C# можно поочередно отправить сначала GET, затем POST запрос, не разрывая соединения? HttpWebRequest или WebClient - не важно.


Ты имеешь ввиду параллельно? Если да - то создай отдельный трид и уже по ситуации делай их синхронными или асинхронными в зависимости от надобности.
Если просто поочередно отправить запросы, то просто не закрывай соединение и шли новый смотрим , но не закрывай ответ.
 
Ответить с цитированием

  #1332  
Старый 12.05.2012, 21:52
Аватара для Hack_ERR++
Hack_ERR++
Познающий
Регистрация: 13.08.2009
Сообщения: 45
Провел на форуме:
4 дня 12 часов 25 минут

Репутация: 0 ±

По умолчанию

Просто поочередно надо.

Делаю так:

Код:
/*сначала гет*/ HttpWebRequest reqg = (HttpWebRequest)System.Net.WebRequest.Create("сайт"); HttpWebResponse resp = (HttpWebResponse)reqg.GetResponse(); System.IO.Stream stream = resp.GetResponseStream(); System.IO.StreamReader sr = new System.IO.StreamReader(stream); string st = sr.ReadToEnd(); /*потом пост*/ reqg.Method = "POST"; reqg.Timeout = 100000; reqg.ContentType = "application/x-www-form-urlencoded"; byte[] sentData = Encoding.GetEncoding(1251).GetBytes("запрос"); reqg.ContentLength = sentData.Length; System.IO.Stream sendStream = reqg.GetRequestStream(); sendStream.Write(sentData, 0, sentData.Length); sendStream.Close();


ругается на reqg.ContentLength = sentData.Length (Это свойство не может быть установлено после того, как началась запись.). Если для поста сделать отдельный WebRequest.Create, ошибок нет, но и результата тоже.
 
Ответить с цитированием

  #1333  
Старый 12.05.2012, 22:27
Аватара для Spot
Spot
Elder - Старейшина
Регистрация: 01.03.2007
Сообщения: 185
Провел на форуме:
1 неделю 2 дня

Репутация: 0 ±

По умолчанию

Цитата:
Сообщение от Hack_ERR++  
Просто поочередно надо.

Делаю так:

Код:
/*сначала гет*/ HttpWebRequest reqg = (HttpWebRequest)System.Net.WebRequest.Create("сайт"); HttpWebResponse resp = (HttpWebResponse)reqg.GetResponse(); System.IO.Stream stream = resp.GetResponseStream(); System.IO.StreamReader sr = new System.IO.StreamReader(stream); string st = sr.ReadToEnd(); /*потом пост*/ reqg.Method = "POST"; reqg.Timeout = 100000; reqg.ContentType = "application/x-www-form-urlencoded"; byte[] sentData = Encoding.GetEncoding(1251).GetBytes("запрос"); reqg.ContentLength = sentData.Length; System.IO.Stream sendStream = reqg.GetRequestStream(); sendStream.Write(sentData, 0, sentData.Length); sendStream.Close();


ругается на reqg.ContentLength = sentData.Length (Это свойство не может быть установлено после того, как началась запись.). Если для поста сделать отдельный WebRequest.Create, ошибок нет, но и результата тоже.



Ну так тебе нужно создать второй запрос, а ты его не создаешь - ты делаешь так: Создал запрос, считал ответ, переприсвоил вариант метода и всё. Тебе нужно создать полностью новый запрос для поста new() .
Я так понимаю, что нужно зайти на сайт Постом, получить данные печеньки или хз что там, и после чего сделать ещё один запрос, на этот раз Гет?
 
Ответить с цитированием

  #1334  
Старый 12.05.2012, 22:35
Аватара для Hack_ERR++
Hack_ERR++
Познающий
Регистрация: 13.08.2009
Сообщения: 45
Провел на форуме:
4 дня 12 часов 25 минут

Репутация: 0 ±

По умолчанию

наоборот, сначала гет, затем пост.

Цитата:
Тебе нужно создать полностью новый запрос для поста


Создавал - ошибки нет, но результат уже не тот. Там в коде страницы есть что-то вроде key, вот его мне нужно считать. Если сделать так:

Код:
HttpWebRequest reqg = (HttpWebRequest)System.Net.WebRequest.Create("сайт"); HttpWebResponse resp = (HttpWebResponse)reqg.GetResponse(); System.IO.Stream stream = resp.GetResponseStream(); System.IO.StreamReader sr = new System.IO.StreamReader(stream); string st = sr.ReadToEnd(); HttpWebRequest req = (HttpWebRequest)System.Net.WebRequest.Create("сайт"); //новый запрос req.Method = "POST"; req.Timeout = 100000; req.ContentType = "application/x-www-form-urlencoded"; byte[] sentData = Encoding.GetEncoding(1251).GetBytes("запрос"); req.ContentLength = sentData.Length; System.IO.Stream sendStream = reqg.GetRequestStream(); sendStream.Write(sentData, 0, sentData.Length); sendStream.Close();


и, скажем, в textbox1 и textbox2 считать коды страниц после GET и после POST - они различаются, т.е. различается мой key.
 
Ответить с цитированием

  #1335  
Старый 13.05.2012, 13:51
Аватара для seosimf
seosimf
Участник форума
Регистрация: 03.03.2011
Сообщения: 104
Провел на форуме:
3 дня 11 часов 34 минуты

Репутация: 0 ±

seosimf@jabber.ru
По умолчанию

@Hack_ERR++ ну тк там наверно этот key зависит от cookie, а ты их не передаешь. Вообще вопрос задан очень сумбурно, сформулируй правильно вопрос и я уверен что ты сам сможешь на него ответить.
 
Ответить с цитированием

  #1336  
Старый 13.05.2012, 14:40
Аватара для Spot
Spot
Elder - Старейшина
Регистрация: 01.03.2007
Сообщения: 185
Провел на форуме:
1 неделю 2 дня

Репутация: 0 ±

По умолчанию

Цитата:
Сообщение от Hack_ERR++  
наоборот, сначала гет, затем пост.



Создавал - ошибки нет, но результат уже не тот. Там в коде страницы есть что-то вроде key, вот его мне нужно считать. Если сделать так:

Код:
HttpWebRequest reqg = (HttpWebRequest)System.Net.WebRequest.Create("сайт"); HttpWebResponse resp = (HttpWebResponse)reqg.GetResponse(); System.IO.Stream stream = resp.GetResponseStream(); System.IO.StreamReader sr = new System.IO.StreamReader(stream); string st = sr.ReadToEnd(); HttpWebRequest req = (HttpWebRequest)System.Net.WebRequest.Create("сайт"); //новый запрос req.Method = "POST"; req.Timeout = 100000; req.ContentType = "application/x-www-form-urlencoded"; byte[] sentData = Encoding.GetEncoding(1251).GetBytes("запрос"); req.ContentLength = sentData.Length; System.IO.Stream sendStream = reqg.GetRequestStream(); sendStream.Write(sentData, 0, sentData.Length); sendStream.Close();


и, скажем, в textbox1 и textbox2 считать коды страниц после GET и после POST - они различаются, т.е. различается мой key.



Как я уже писал выше - скорей всего в печеньках дело. Если так - то их нужно передавать вместе с запросом.
 
Ответить с цитированием

  #1337  
Старый 13.05.2012, 14:52
Аватара для Jakeroid
Jakeroid
Участник форума
Регистрация: 09.05.2009
Сообщения: 211
Провел на форуме:
5 дней 2 часа 21 минуту

Репутация: 1 ±

Отправить сообщение для  Jakeroid с помощью ICQ jakeroid@jabber.ru
Question

Цитата:
Сообщение от Hack_ERR++  
Как в C# можно поочередно отправить сначала GET, затем POST запрос, не разрывая соединения? HttpWebRequest или WebClient - не важно.

Что значит не разрывая соединения? Тебе нужно что бы сокет не дисконектился или что сессия сохранилась?
 
Ответить с цитированием
Ответ


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[ C / C++ ] — начинающим: задаем вопросы _Great_ С/С++, C#, Delphi, .NET, Asm 7317 Сегодня 21:49
[ Delphi / Pascal ] — начинающим: задаем вопросы Isis С/С++, C#, Delphi, .NET, Asm 9442 Вчера 01:18
Apache уходит из управляющего совета Java mc_maxim Мировые новости. Обсуждения. 0 10.12.2010 09:50
Словарь Java-терминов foreva Чужие статьи 0 08.02.2005 16:28


Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра


Быстрый переход


Powered by: vBulletin Version 3.0.x
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.

ANTICHAT.RU