使用LWP :: UserAgent在Perl中检索MRTG图

时间:2014-04-02 07:06:57

标签: perl lwp-useragent mrtg

我正在尝试在Linux环境中使用Perl检索MRTG图。

#!/usr/bin/perl
use strict;
use warnings;
use LWP::UserAgent;
use Data::Dumper;

my $ua = LWP::UserAgent->new;
$ua->timeout(10);

my $response = $ua->get('http://www.myview.internetaccess.tatacommunications.com/cgi-bin/');


if ($response->is_success) {
    print $response->decoded_content;  # or whatever
}
else {
    die $response->status_line;
}

我使用了代码,但出现了以下错误: -

  Error:   401 Authorization Required at mrtg.pl line 18.

然后我将其添加到代码中,

$ua->credentials("url","username","password");

但我得到同样的错误。 任何人都可以帮我解决它。 谢谢。

1 个答案:

答案 0 :(得分:1)

再次检查LWP::UserAgent的文档,您错过了参数:

  

$ ua->凭据($ netloc,$ realm,$ uname,$ pass)

     

获取/设置用于领域的用户名和密码。

     

$ netloc是"< host>:< port>"形式的字符串。用户名和密码只会传递给此服务器。例如:

     

$ ua->凭据(" www.example.com:80","某些领域"," foo","秘密&# 34);

可能更简单的方法就是在网址中加入u / p。

my $response = $ua->get('http://user:pass@www.myview.internetaccess.tatacommunications.com/cgi-bin/');