我使用Mojo::Useragent在使用HTTP_PROXY和HTTPS_PROXY定义的代理后面获取一些站点
下面是一个代码示例:
my $rs = $ua->insecure(1)->get($mysite)
if($rs->res->is_success) {
.....
} else {
print "Problem with fetching $mysite \n";
print $rs->res->error->{message};
}我得到了这个错误:
尝试连接失败:14077419: SSL routines:SSL23_GET_SERVER_HELLO:tlsv1警报访问被拒绝
当我在同一台机器上使用curl时,我得到了预期的结果。
知道如何解决这个问题吗?
发布于 2018-12-11 18:16:07
从SSL错误来看,您的网络似乎正在积极地拒绝让您通过。
定义环境变量HTTP_PROXY和HTTPS_PROXY很好,但是您需要告诉Mojo::UserAgent使用它们(与cURL不同,默认情况下自动查找它们)。
在运行查询之前,将这一行添加到代码中:
$ua->proxy->detect;如果您在不使用环境变量的情况下寻找纯Perl解决方案,可以直接在代码中手动配置代理,如下所示:
$ua->proxy
->http('http://127.0.0.1:8080')
->https('http://127.0.0.1:8080');https://stackoverflow.com/questions/53728872
复制相似问题