我有两个脚本在服务器上执行不同的任务。一个是用 Perl (.cgi) 编写的,另一个是用 PHP 编写的。
我正在尝试通过执行以下操作从 perl CGI 脚本发出请求:
$ua = LWP::UserAgent->new;
$ua->agent("$0/0.1 " . $ua->agent);
$ua->timeout(30);
$queryStr = (xxxMaskedxxx);
$request = HTTP::Request->new('GET', $queryStr);
$response = $ua->request($request);
if ($response->is_success)
{
$search = strpos($res->content, "not");
if($search==true)
{ return -1; }
}
我尝试了两种方法从 PHP 发回结果:
这个:
HttpResponse::setCache(true);
HttpResponse::setContentType('text/html');
if (!$result)
HttpResponse::setData("<html>Message not delivered</html>");
else
HttpResponse::setData("<html>Message successfully delivered</html>");
HttpResponse::send();
和这个:
echo "Content-type: text/html\n\n";
if (!$result)
echo 'Message not delivered' . PHP_EOL;
else
echo 'Message successfully delivered' . PHP_EOL;
但是$response->is_success
两种情况都返回false?当我尝试打印响应时,我得到了这个:
响应是 HTTP::Response=HASH(0x97a8b34)
我做错了什么?
这两个脚本也并排坐着。他们之间有没有更好的沟通方式?