题
这个问题类似于另一个 一个,关于pycurl
当我将邮政请求发送给安全URL时,我有以下错误,使用curlpp https://stackoverflow.com/questions/1942719/pycurl-tls-handshake-error
好,所以根据答案 上一个问题, ,我应该将libcurl与openssl一起使用。如果我跑步 curl -v
, ,我明白了:
curl 7.19.7 (i486-pc-linux-gnu) libcurl/7.19.7 OpenSSL/0.9.8k zlib/1.2.3.3 libidn/1.15
Protocols: tftp ftp telnet dict ldap ldaps http file https ftps
Features: GSS-Negotiate IDN IPv6 Largefile NTLM SSL libz
因此,我应该使用openssl,而不必看到gnutls。因此,如果我尝试通过命令行直接通过卷曲来发送相同的请求,则可以正常工作,并且我在命令输出上看到了我期望的结果。
因此,事实证明,当我切换到curlpp时,它使用Gnutls,而不是OpenSSL。我是否需要配置一些东西,以指定我希望使用curlpp的OpenSSL?
解决方案
Curlpp只是Libcurl的包装器,它并不决定LIBCURL使用哪种SSL实现。
我不确定您是如何进入的 when I switch to CURLpp, it uses gnuTLS, instead of openSSL
结论,但我怀疑您已安装了多个libcurl。
作为旁注, TLS fatal alert ... received
(在链接的问题中提到)可能是由于对 服务器端 (无效的Servername TLS扩展,未能协商密码等)。