使用perl从http post获取/转储所有信息

使用perl从http post获取/转储所有信息,perl,http,cgi,Perl,Http,Cgi,嗨,我有一个移动客户端(一个地理围栏应用程序),它将发送一个触发的HTTP请求(POST)。这将由web服务器上的perl脚本获取 目前我不知道HTTP请求的结构如何。如何使用perl获取完整的HTTP请求以对其进行分析?我想最好的方法是将请求转储到文件中 就我所了解的CGI而言,为了处理HTTP POST请求,我需要给出对象名,但我不知道它们。是否有方法转储完整请求 CGI脚本没有收到HTTP请求。如果要转储CGI脚本接收的表单数据,可以使用以下命令: use CGI qw(

嗨,我有一个移动客户端(一个地理围栏应用程序),它将发送一个触发的HTTP请求(POST)。这将由web服务器上的perl脚本获取

目前我不知道HTTP请求的结构如何。如何使用perl获取完整的HTTP请求以对其进行分析?我想最好的方法是将请求转储到文件中


就我所了解的CGI而言,为了处理HTTP POST请求,我需要给出对象名,但我不知道它们。是否有方法转储完整请求

CGI脚本没有收到HTTP请求。如果要转储CGI脚本接收的表单数据,可以使用以下命令:

use CGI          qw( );
use Data::Dumper qw( Dumper );

my $cgi = CGI->new();
my %form;
for my $param ($cgi->param()) {
   $form{$param} = [ $cgi->param($param) ];
}

print($cgi->header('text/plain'));

local $Data::Dumper::Indent   = 1;
local $Data::Dumper::Sortkeys = 1;
local $Data::Dumper::Useqq    = 1;
print(Dumper(\%form));

谢谢,ikegami这是给我带来正确的道路。。。。看起来请求是来自打印的json结果(dumper($form));是$VAR1=[{“timestamp”=>“Array(0x123),“id”=>“Array(0x123)}]。有了这个我可以工作:)不应该看起来像那样。。。ug,CGI的
Vars
做了一些非常神奇的事情。更新了我的答案。您可能还想
打印转储程序(\%ENV)
查看web服务器从请求中设置的环境变量。