6

有谁知道如何使用 mod_perl2 访问/修改 POST 请求数据。在 GET 方法中,可以获取/设置请求 QUERY 字符串:

  $args      = $r->args();
  $prev_args = $r->args($new_args);

如何在 POST 方法中获取/设置请求 QUERY 字符串?

4

2 回答 2

5

使用 获取 POST 参数Apache2::Request::param

要设置,首先从方法中获取一个APR::Request::Param::Table对象。body将它重新bless变成一个APR::Table对象,然后使用它的方法来操作数据。

于 2010-06-21T10:04:23.087 回答
1

我使用这个 mod_perl2 代码片段成功解析出通过 POST 方法提交的表单字段值:

use CGI;

my $req = CGI->new($r);
my $field_value = $req->param('form_field');

如果您不use CGI;按照上面的说明进行操作,请使用以下代码:

my $req = Apache2::Request->new($r);
my $field_value = $req->param('form_field');

您可能会在 GET 方法中取得成功。但是,在通过 POST 方法获取请求时,就我而言,我陷入了一些“预取 filter.c(270) 错误”之王的无限循环,并且请求将永远不会返回。

于 2011-01-30T22:23:30.207 回答