Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Andrey Golubev                       2:5030/542.122 19 Oct 2000  00:16:10
 To : Artem Chuprina
 Subject : LWP::UserAgent проблемы с redirect'ом
 -------------------------------------------------------------------------------- 
 
 *** Answering a msg posted in area AZAZELLO.MAIL (Почта мне).
 
 Hello Artem!
 
 18 октября 2000 19:44, Artem Chuprina wrote to Andrey Golubev:
 
  AG>> моем скрипте этот ответ не записывается...  а записываются только
  AG>> 2 байта... а надо бы чтобы записывалось, то что в ответ на сабмит
  AG>> дает сервер...
 
  AC> Вот он и пишет, что в ответ на сабмит дает сервер. Hу, поскольку ты
  AC> плюешь на заголовок и выводишь только тело, то его тебе и выводят. А
 
 а что это плохо, что никак не использую заголовок ?
 если бы я его использовал, то мог бы я добиться чего хочу ?
 
  AG>> sub POSTsubmit
  AG>> {
  AG>>   ($spreferer, $spurl, $spformdata, $sptgpname)=@_;
  AG>>   $h = new HTTP::Headers;
  AG>>   $h->referer("$spreferer");
  AG>>   # Create a user agent object
  AG>>   $ua = new LWP::UserAgent;
  >>>  $ua->redirect_ok;
  AG>>   $ua->timeout(20);
  AG>>   $ua->agent('Mozilla/4.0 (compatible; MSIE 5.0; Windows 98;
  AG>> DigExt)');  # Create a request  my $req = new HTTP::Request(POST,
  AG>> "$spurl", $h);
  AG>> $req->content_type('application/x-www-form-urlencoded');
  AG>> $req->content("$spformdata");  # Pass request to the user agent
  AG>> and get a response back  my $res = $ua->request($req);
 
  AG>> # Check the outcome of the response
  AG>>   if($res->is_success) { # нашли
  AG>>       $tmp="$sptgpname".".html";
  AG>>       open(htmlka, ">logs/$catalog/$tmp");
  AG>>       print htmlka "$spurl\n";
  AG>>       print htmlka "$spformdata\n";
  AG>>       print htmlka $res->content;
  AG>>       close(htmlka);
 
  AG>> Когда я ставлю в скрипт выделенную строчку, а именно
  AG>>   $ua->redirect_ok;
  AG>> то выдается следующая ошибка...
 
  AG>> Can't call method "method" on an undefined value at
  AG>> C:/Proglang/Perl/site/lib/LWP/UserAgent.pm line 367, <tgp> chunk
  AG>> 1264.
  AG>> Я смотрю в perldoc LWP::UserAgent и вот что там читаю:
 
  AG>>   $ua->redirect_ok
  AG>>       This method is called by request() before it tries to do any
  AG>>       redirects. It should return a true value if a redirect is
  AG>>       allowed to be performed. Subclasses might want to override
  AG>>       this.
 
  AG>>       The default implementation will return FALSE for POST
  AG>>       request and TRUE for all others.
 
  AC> А словаря у тебя тоже нет? Перевожу:
 
 словарь есть... мне кажется, что я так все примерно и понял, как ты пишешь, но
 просто видимо я сути недопонимаю, даже на русском... ;(
 
  AC> Этот метод вызывается request()'ом, прежде чем оный request пытается
  AC> произвести любые редиректы. Он [redirect_ok - AC] должен возвращать
  AC> истинное значение, если редирект разрешен. Подклассы могут пожелать
  AC> его переопределить.
 
  AC> Стандартный возвращает FALSE для POST-запросов и TRUE для всех
  AC> остальных.
 
  AC> Ее не вызывать, а переопределять надо, если хочешь, чтобы фиговина
  AC> при редиректах вела себя не так, как по умолчанию, а иначе.
 
 дык значит ее надо не вызывать, а переопределять... но как ?
 я пытаюсь писать вместо
 
   $ua->redirect_ok;
 
 следующие строки
 
 $ua->redirect_ok = "TRUE";
 
 или
 redirect_ok='TRUE';
 
 но это все бред, так как ничего не работает...
 Пожалуйста, объясни, как переопределить переменную являющуюся методом или это
 сам метод... я уже просто запутался... ;(
 
 Плс, если есть немного времени, объясни что же все-таки мне надо сделать, чтобы 
 скрипт записывал то, что выдают в ответ сервера, которые редиректят !
 
 не то чтобы я не хочу сам думать... я много пытался пробовать по всякому, но
 видимо в этом вопросе я просто сути не понимаю, даже когда ты так хорошо перевел
 на русский содержание хелпа...
 
 Заранее благодарен за потраченное на меня время ! И очень надеюсь, что ты мне
 немного поможешь разобраться в ситуации...
                                                         WBR, Andrey Golubev
 
 ---
  * Origin: Вот ! (2:5030/542.122)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 LWP::UserAgent проблемы с redirect\'ом   Andrey Golubev   18 Oct 2000 00:23:19 
 Re: LWP::UserAgent проблемы с redirect\'ом   Paul Kulchenko   18 Oct 2000 19:27:52 
 Re: LWP::UserAgent проблемы с redirect\'ом   Artem Chuprina   18 Oct 2000 19:44:54 
 LWP::UserAgent проблемы с redirect\'ом   Andrey Golubev   19 Oct 2000 00:16:10 
 Re: LWP::UserAgent проблемы с redirect\'ом   Artem Chuprina   20 Oct 2000 18:36:41 
Архивное /ru.perl/1887039ee089c.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional