我正在尝试编写
一个Perl CGI脚本来处理
XML-RPC请求,其中
XML文档作为HTTP POST请求的主体发送.
CGI.pm模块在从HTTP请求中提取命名参数方面做得很好,但我无法弄清楚如何使它能够给我整个HTTP请求体(即XML-RPC请求中的XML文档)处理).
如果不是CGI.pm,是否有另一个模块能够从请求中解析出这些信息?我不想从环境变量“手工”提取这些信息.感谢任何帮助.
您可以使用特殊参数
名称POSTDATA
获取原始POST数据.
my $q = CGI->new;
my $xml = $q->param( 'POSTDATA' );
或者,您可以直接阅读STDIN而不是使用CGI.pm,但是您将丢失CGI.pm所有其他有用的东西.
POSTDATA技巧记录在优秀的CGI.pm docs here中.