Beberle wrote:
Hi,

I found a similar question posted in the newsgroups
but no one seemed to have a solution. Here's what I'm
trying to do. I have a web page that does a POST to a
remote server. Basiscally, I'm trying to read the
post data and if it matches a regex, I want to
redirect it. Otherwise, I want to let the POST
continue normally (submitting to the remote server).


At the PerlTransHandler stage, I have a handler that
reads the post data like so:

my $method = $r->method();
if ($method =~ /post/i) {
my $content; $r->read($content,
$r->headers_in->{'content-length'});
if ($content =~ /some_regex/){
# redirect
} else {
# continue with post
return OK;
}
}


I can capture the POST data and redirect the user just
fine. The problem occurs with the submitted forms that
don't match the regex.  If I just return OK, the
browser hangs (because the POST data has been reset?).
 I'll admit I'm a bit confused as to what's actually
going on here (still new to mod_perl).  I read you're
not supposed to parse the form data except at the
ContentHandler step, but since the form is submitting
to a remote host, I can't really do that.


Not 100% sure what you are telling me here but why not simply use Apache::Request->instance($r).


The problem with POSTED data is that you can not read them more than once you can think of it like STDIN when read once you can not go back and read it once more.

Any ideaas?

In mp2 you could also use an input-filter for this purpose.


Thanks, Bill

__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com




--
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html



Reply via email to