获得500个握手错误:443超过https.我发送
XML的主机服务不支持TLS 1.2,它们支持1.0和1.1.目前在CentOS 6上使用LWP 6.03.使用下面的代码,他们声称我仍在使用TLS1.2发送
use LWP::UserAgent; $ua = LWP::UserAgent->new(ssl_opts => { verify_hostname => 0,SSL_version => 'SSLv23:!TLSv12' }); $req = HTTP::Request->new(GET => 'https://secure-host-server'); $res = $ua->request($req); if ($res->is_success) { print $res->content; } else { print "Error: " . $res->status_line . "\n"; }
是否可以在发送给主机时打印TLS版本?我能做些什么来验证我使用的是TLS1.1?
解决方法
通过LWP :: UserAgent设置SSL_version不起作用.我尝试了无数方法试图让我的代码通过TLSv1发送XML而没有运气,下面的代码就可以了.
use Net::SSLglue::LWP; use IO::Socket::SSL; my $context = new IO::Socket::SSL::SSL_Context( SSL_version => 'tlsv1',SSL_verify_mode => Net::SSLeay::VERIFY_NONE(),); IO::Socket::SSL::set_default_context($context); use LWP::UserAgent; use HTTP::Request::Common;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。