我有一个第三方 Perl 脚本,旨在由浏览器执行并处理 HTTP POST 请求中的数据。
该脚本可以从命令行执行,但这样做时它不会在预期的环境中执行,因此无法访问所需的用户数据。
我需要非常频繁地执行脚本,并希望避免启动 Apache 进程来处理可以在命令行中处理的内容的开销。该脚本从命令行执行比通过 Apache 快得多(至少没有输入数据)。
我想包装脚本,以便将命令行参数传递给脚本,就好像它们存在于 HTTP POST 请求中一样。
我对 Perl 不是很熟悉,想用 PHP 提供一个(基本的)示例来表示我打算实现的目标。
<?php
$_POST['example1'] = $argv[1];
$_POST['example2'] = $argv[2];
include /var/www/thirdPartyScript.php
?>
Perl 脚本按如下方式访问数据:
#!/usr/bin/perl -T
use CGI 3.40 qw(-newstyle_urls -private_tempfiles redirect);
# ...
my $q = CGI->new();
# ...
if ($q->param('example1') {
} else {
}
包装脚本需要设置什么,以便第三方脚本可以访问相关数据,就好像这些数据是在 HTTP POST 请求中提供的一样?