perl – REST :: Client:如何忽略SSL证书
发布时间:2020-12-16 06:23:12 所属栏目:大数据 来源:网络整理
导读:我正在使用REST :: Client,我的代码因SSL错误而失败. 这是代码: #!usr/bin/perl -wuse strict;use REST::Client;my $client = REST::Client-new();$client-GET("https://something/api/sessions");print $client-responseContent(); 这是输出: WP::Protoco
我正在使用REST :: Client,我的代码因SSL错误而失败.
这是代码: #!usr/bin/perl -w use strict; use REST::Client; my $client = REST::Client->new(); $client->GET("https://something/api/sessions"); print $client->responseContent(); 这是输出: WP::Protocol::https::Socket: SSL connect attempt failed with unknown error error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed at /usr/local/share/perl/5.10.1/LWP/Protocol/http.pm line 51. 我知道这个问题. REST :: Client无法忽略SSL证书. 当我不使用“-k”选项时,我得到与curl完全相同的错误: 这是curl命令: curl -i -H "Accept:application/*+xml;version=1.5" -u "username@system:password" -X post https://something/api/sessions 这里是curl输出(错误): curl: (60) SSL certificate problem,verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed 但是,如果我在curl命令中添加“-k”,那么它的工作正常. 从curl的手册页,这里是“-k”的解释: (SSL) This option explicitly allows curl to perform "insecure" SSL connections and transfers. 题: 那么,我如何使REST :: Client忽略SSL证书?或者还有其他优雅的方式吗?我浏览了CPAN上的REST :: Client文档,但它没有谈论这个问题. 谢谢. 解决方法
我通过添加以下行来实现它:
$ENV{PERL_LWP_SSL_VERIFY_HOSTNAME}=0; 参考:https://splash.riverbed.com/docs/DOC-1602 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |