|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Aleksey Barabanov 2:5020/400 26 Jun 2000 22:49:12 To : All Subject : Re: LWP again -------------------------------------------------------------------------------- Serge Vylekzhanin wrote: > [.......] > Если сувать методом GET, то все работает замечательно, редиректы > обрабатываются сами, как надо. :) > Если сувать методом POST, то не обрабатывается редирект на нужный порт > (поле Location в заголовке, код возврата 302). > > кусок данной программы: > > ================================ > if( $method eq 'GET' ) > { > $uagent = new LWP::UserAgent; > $request = new HTTP::Request( $method, "${address}?${variables}" ); > $response = $uagent -> request( $request ); > > if( $response -> is_success ) > { > print( "${address}: OK\n" ); > } > else > { > print( "${address}: ERROR\n" ); > } > } > elsif( $method eq 'POST' ) > { > $uagent = new LWP::UserAgent; > $header = new HTTP::Headers( 'Content-length' => > length( $variables ) ); > $request = new HTTP::Request( $method, $address, > $header, $variables ); > $response = $uagent -> request( $request ); -------------------^^^^^^^^^^^^^^^^^^^^^^ Вот здесь проверьте редирект. И выполните его. Что-то вроде while( $response->is_redirect){... Для повторного запроса используйте значение Location из ответа сервера. > > if( $response -> is_success ) > { > print( "${address}: OK\n" ); > } > else > { > print( "${address}: ERROR\n" ); > } > } > ================================ > > Вопрос: Что я не дописал? (или LWP не дописали :-) > > -- > Serge Сервер ( и LWP ) в этом случае предлагает вам выполнить редирект самостоятельно. Для того чтобы развеять мистику этого процесса рекомендую в начало вставить use LWP::Debug; LWP::Debug::level('+'); И после этого вся отвратительная переадресующая деятельность русского апача вам предстанет в STDERR ;) А если вы почитаете исходники LWP то вообще все вопросы снимуться ;) -- Aleksey Barabanov <alekseybb@mtu-net.ru> --- ifmail v.2.15dev5 * Origin: Small Office (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/44135a36142a.html, оценка из 5, голосов 10
|