ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

perl & LWP:UserAgent
  #1  
Старый 07.05.2007, 14:54
Аватар для x-treem
x-treem
Участник форума
Регистрация: 08.11.2006
Сообщений: 167
Провел на форуме:
539434

Репутация: 54
Отправить сообщение для x-treem с помощью ICQ
По умолчанию perl & LWP:UserAgent

значет есть проблема.
с помощью модуля LWP::UserAgent надо послать POST запрос. НО! Ответ считывать не надо. то есть послал, и забыл. плевать мол на то что сервер ответит. это возможно?
 
Ответить с цитированием

  #2  
Старый 07.05.2007, 16:16
Аватар для KSURi
KSURi
Постоянный
Регистрация: 06.06.2006
Сообщений: 515
Провел на форуме:
1985206

Репутация: 963


По умолчанию

Если я тебя правильно понял, то в данном случае - нет.
Надо использовать IO::Socket, тк LWP ждет хоть какой-то ответ от сервера или выдает еррор по таймауту.
 
Ответить с цитированием

  #3  
Старый 07.05.2007, 16:18
Аватар для x-treem
x-treem
Участник форума
Регистрация: 08.11.2006
Сообщений: 167
Провел на форуме:
539434

Репутация: 54
Отправить сообщение для x-treem с помощью ICQ
По умолчанию

очень жаль...
спасибо
 
Ответить с цитированием

  #4  
Старый 07.05.2007, 16:59
Аватар для Developer
Developer
Участник форума
Регистрация: 03.05.2006
Сообщений: 167
Провел на форуме:
125505

Репутация: 116
По умолчанию

Насколько я знаю, сначала идет коннект, потом уже шлется запрос, поэтому тайм-аут действует только для коннекта к серверу.

Не знаю как в PERL, в PHP просто посылался запрос и сразу закрывалось соединения для этого (никаких fgets).
 
Ответить с цитированием

  #5  
Старый 07.05.2007, 17:12
Аватар для KSURi
KSURi
Постоянный
Регистрация: 06.06.2006
Сообщений: 515
Провел на форуме:
1985206

Репутация: 963


По умолчанию

из perldoc LWP::UserAgent:
Цитата:
Get/set the timeout value in seconds. The default timeout() value is 180 seconds, i.e. 3 minutes.

The requests is aborted if no activity on the connection to the server is observed for timeout seconds. This means that the time it takes for the complete transaction and the request() method to actually return might be longer.
 
Ответить с цитированием

  #6  
Старый 07.05.2007, 20:35
Аватар для genom--
genom--
Постоянный
Регистрация: 09.07.2006
Сообщений: 937
Провел на форуме:
1948091

Репутация: 1686


По умолчанию

бугаг делай

допустм так

my $res = $ua->post('http://forum.web-hack.ru/index.php?act=Login&CODE=01', {'referer' => '', 'UserName' => $login2, 'PassWord' => $password2, 'CookieDate' => 1 })or die 'Bad connect to web-hack.ru';

просто запрос и не требуй чтобы lwp запрашивал инфу в ответ и все будет нормально
ненадо писать типо ->content; ->as_string; и тд.
 
Ответить с цитированием

  #7  
Старый 07.05.2007, 20:51
Аватар для KSURi
KSURi
Постоянный
Регистрация: 06.06.2006
Сообщений: 515
Провел на форуме:
1985206

Репутация: 963


По умолчанию

как раз таки в данном случае, ты запрашиваешь ответ
ты присваиваешь результат $res => скрипт будет ждать пока LWP что-то вернет в $res
а вообще он в любом случае будет ждать, тк LWP всегда возвращает экземпляр HTTP::Response

а content заполняется автоматом, а не при вызове
 
Ответить с цитированием

  #8  
Старый 07.05.2007, 20:56
Аватар для genom--
genom--
Постоянный
Регистрация: 09.07.2006
Сообщений: 937
Провел на форуме:
1948091

Репутация: 1686


По умолчанию

а тебе не кажется что $res это просто указатель -- и если он автоматом заполняется то попробуй его выведи принтом получишь адрес в оперативе --- еслиб он автоматом заполнялся то накой придумывать content as_string и head -- если полюбому они все есть в переменной??? если даже я неправ можно просто поставить небольшой таймут на соеднение и все
 
Ответить с цитированием

  #9  
Старый 07.05.2007, 21:29
Аватар для KSURi
KSURi
Постоянный
Регистрация: 06.06.2006
Сообщений: 515
Провел на форуме:
1985206

Репутация: 963


По умолчанию

И так по порядку:

1. При print'e получаем: HTTP::Response=HASH(0x28f2a74)link.
Если присмотреться к строке внимательно, ты ты заметишь в ней "HTTP::Response", это означает, что переменная является экземпляром класса HTTP::Response. А HASH(0x28f2a74) показывает тип переменной и ее адрес в таблице переменных перла.

2. Надеюсь эти скриншоты тебе помогут разобраться в сути дела:
 
Ответить с цитированием

  #10  
Старый 07.05.2007, 21:39
Аватар для genom--
genom--
Постоянный
Регистрация: 09.07.2006
Сообщений: 937
Провел на форуме:
1948091

Репутация: 1686


По умолчанию

ну вот -- а может ты увидил ответ серва из-за того что запросил его через редактор и он его специально его получил??? -- не ты прав -- позырил в фаере трафф на соединение отосланный и полученный -- да выкачивает =)

Последний раз редактировалось genom--; 07.05.2007 в 21:42..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поддержка прокси в сплоитах на Perl LWP::UserAgent 3er0 Авторские статьи 0 08.06.2006 13:48
Опасность ошибок Perl недооценивалась? 1251soldier Мировые новости 0 01.12.2005 20:56
Books Perl FRAGNATIC PHP, PERL, MySQL, JavaScript 0 11.08.2005 16:58
Безопасность приложений на Perl k00p3r Чужие Статьи 0 12.06.2005 09:39



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


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




ANTICHAT.XYZ