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


ru.cgi.perl

 
 - RU.CGI.PERL ------------------------------------------------------------------
 From : Michael Samanov                      2:550/5068.1515 24 Jan 2001  01:27:07
 To : All
 Subject : POST redirection in mod_perl
 -------------------------------------------------------------------------------- 
 
 Hello, All!
 
 Делаю, как написано в умных книжках:
 
 if($r->method eq 'POST') {
   $r->method('GET');
   $r->method_number(M_GET);
   $r->headers_in->unset('Content-length');
 
 }
 
 # $r->log_error(Data::Dumper::Dumper($r->args));
 $r->args("key=val");
 # $r->log_error(Data::Dumper::Dumper($r->args));
 $r->internal_redirect_handler($new_place);
 
 Hи фига не работает - параметры не передаются. ВООБЩЕ HИКАКИЕ.
 Мне нужны измененные параметры, а не исходные, которые POSTed,
 поэтому с $r->content я не заморачиваюсь. Зато когда пишу код,
 приведенный ниже, то работает. Hичччччего не понимаю :-( Кому,
 спрашивается, тогда верить: книжкам или глазам/рукам? Может, это
 из-за Apache::Request-а, через который я вначале данные
 принимаю? Hо какая разница? Я ведь все равно устанавливаю метод
 GET, так что $r->content должен быть абсолютно пофиг. Причем,
 когда я раскомментариваю отладку, то видно, что args все-таки
 поменялись, а вот в новом хендлере, в который я енто дело
 заinternal_redirect_handlerил, они уже пустые.
 
 Это - работает, как из пушки, хоть тебе был вначале POST, хоть
 GET.
 
 if($r->method eq 'POST') {
   $r->method('GET');
   $r->method_number(M_GET);
   $r->headers_in->unset('Content-length');
 
 }
 
 $r->internal_redirect_handler("$new_place?key=val");
 
 Кстати, только что придумал: может, оно так себя ведет из-за
 того, что у меня страницы виртуальные, т.е. таких файлов на
 самом деле нету, на которые $new_place ссылается?
 
 По сути - работает, да и ладно, но неаккуратно как-то (из
 анекдота про аккуратного дяденьку, у которого одно яичко висело
 ниже другого).
 
 Sincerely yours, Michael (mailto:mike@vlink.ru).
 --- ifmail v.2.14
  * Origin: Mike's home (2:550/5068.1515@fidonet)
 
 

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

 Тема:    Автор:    Дата:  
 POST redirection in mod_perl   Michael Samanov   24 Jan 2001 01:27:07 
Архивное /ru.cgi.perl/79498b2b990c.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional