Автор Тема: Не получается перенаправление...  (Прочитано 2884 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн NeuroniX

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 6
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Не получается перенаправление...
« : 09 Октября 2003, 22:58:11 »
Люди ! Помогите справиться со скриптом !
Вот кусок кода:
$ua = LWP::UserAgent->new(agent => "NeuroCC (0.1-dev/Linux)",
                                            keep_alive => 1,
                                           );

$ua->proxy(\'http\', "$proxyAddr") if $useProxy;
$ua->cookie_jar( HTTP::Cookies->new( file => "/var/www2/webroot/cgi-perl/control-system/cookies.txt", autosave => 1, ignore_discard =>1));

$response = $ua->request(POST \'http://passport.yandex.ru/cgi-bin/Reg.pl?from=mail&retpath=http://mail.yandex.ru/yamail\',
                                                 [ login => "user", passwd => "pass" ]
                             );

Если выводить на экран $response, то видно, что сервер присылает заголовки HTTP/1.0 302 (Found) Moved Temporarily, а ниже HTTP/1.1 302 Found, в обоих заголовках есть поле Location: <....>
Вопрос: как заставить скрипт автоматом перейти на страницу со значением поля Location, причём значение поля не статическое.
Unix like vigvam - no windows, no gates and an apache inside.

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
Не получается перенаправление...
« Ответ #1 : 10 Октября 2003, 11:18:22 »
Считать Location и скормить скрипту. В чем проблема то?
The documentations is your friend

Оффлайн NeuroniX

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 6
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Не получается перенаправление...
« Ответ #2 : 11 Октября 2003, 21:00:51 »
КАК ЕГО СЧИТАТЬ ???
Unix like vigvam - no windows, no gates and an apache inside.

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
Не получается перенаправление...
« Ответ #3 : 13 Октября 2003, 14:29:44 »
NeuroniX сними Caps Lock.

Во вторых $response у тебя содержит значение Location.
Ты не знаеш как заголовки вытащить?
Вот так:
print "HEADERS\\n";
print "$_ is $response->{_headers}{$_} \\n" for (keys %{$response->{_headers}});
Находиш нужное значение и далее $ua->request на это значение.
The documentations is your friend

Оффлайн NeuroniX

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 6
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Не получается перенаправление...
« Ответ #4 : 17 Октября 2003, 23:57:20 »
Спасибо, всё работает !
Unix like vigvam - no windows, no gates and an apache inside.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28