0

我正在使用 Perl 从我构建的 Web 服务中请求一些信息(纯文本)。使用浏览器访问时,信息显示完美。但是,我是使用 Perl 处理响应的新手。我成功地做了一些数据库操作,我的问题是在 Perl 中处理响应,而不是 PHP。

我如何必须对响应进行编码或格式化才能成功处理它并在 Perl 中输出相同的纯文本?

编辑:

需要考虑的关键点

  • 我正在使用 CakePHP 2.x(稳定版)。
  • $response->content带来了整个HTML 文件(包括 JavaScript 和整个包)。我只想在 Perl 脚本中显示纯文本。
  • Perl 脚本在检查*$response->is_success*时失败并直接打印“出现问题”;.

我的 php 脚本运行良好

PHP代码:

<?php
$this->layout = 'ajax';
$this->autoRender = false;
// Some database handling here with no problem...
echo "Plain text with info from database";
?>

Perl代码:

#!/usr/local/bin/perl
require LWP::UserAgent;
require HTTP::Request;
my $request = HTTP::Request->new(GET => $url);
my $userAgent = LWP::UserAgent->new;
$userAgent->timeout(3);
$userAgent->env_proxy;
my $response = $userAgent->request($request);
if ($response->is_success) {
    print "Success!\n";
    #should print plain text AS IS
}
else {
    print "something went wrong...\n";
    die $response->status_line;
}
4

1 回答 1

1

检查后$response->is_success,你应该可以只取返回值

$response->decoded_content

并以您认为合适的方式处理它。

于 2012-09-13T16:49:49.960 回答