【发布时间】:2014-01-20 14:03:38
【问题描述】:
我正在尝试使用 Perl 请求带有 HTTPS 身份验证的 html 文档。我过去没有遇到过非 HTTPS 代码的问题。我目前正在使用 LWP::UserAgent:
#! /usr/bin/perl
use LWP;
use HTTP::Request::Common;
my $browser = LWP::UserAgent->new;
my $baseurl = "https://xyz.url.com/directory";
my $ua = LWP::UserAgent->new(keep_alive=>1);
$ua->cookie_jar({});
$ua->credentials('xyz.url.com:80', '', 'login', 'password');
my $response = $ua->get($baseurl);
print $response->content();
打印的响应本质上是“401 Unauthorized”页面。我可以通过浏览器登录。浏览器使用一个弹出窗口,显示“需要身份验证——服务器 xyz.url.com:80 需要用户名和密码。服务器说:Blah Blah' 我读过很多帖子,指示安装 Crypt::SSLeay 和 LWP::Protocol::https 之类的东西。这些已安装。我被难住了。
我还下载了一个名为 Charles 的程序,以查看请求/响应是否有任何值得注意的地方,但我不确定该去哪里找。我尝试为领域添加“Blah Blah”,但这并不成功。可以使用 Charles 识别领域吗?
【问题讨论】:
-
这个问题很相似,我在发布这个问题之前阅读了一个问题。但是,我没有解决方案,如果有人指导我使用 Charles 或其他工具解决问题,我将不胜感激。
标签: perl https lwp charles-proxy