我正在尝试使用libcurl与具有有效SSL证书的网站建立https连接,该证书由其中一个机构颁发。
我从http://curl.haxx.se/ca/cacert.pem
获得了cacert.pem以下是我正在使用的代码:
curl_easy_setopt(curl, CURLOPT_URL, url);
curl_easy_setopt(curl, CURLOPT_VERBOSE, 1);
curl_easy_setopt(curl, CURLOPT_CAINFO , "./cacert.pem");
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, parse_response);
curl_easy_perform(curl);
这是我得到的输出:
- 即将连接()与HOST_ADDRESS_IS_HERE端口443(#0)
- 尝试HOST_IP_IS_HERE ...
- 添加句柄:conn:0x153d68
- 添加句柄:发送:0
- 添加句柄:recv:0
- Curl_addHandleToPipeline:length:1
- Conn 0(0x153d68)send_pipe:1,recv_pipe:0
- 已连接至HOST_ADDRESS_IS_HERE(HOST_IP_IS_HERE)端口443(#0)
- 成功设置证书验证位置:
- CAfile:./ caacert.pem CApath:none
- 错误:1408D108:SSL例程:SSL3_GET_KEY_EXCHANGE:签名长度错误
- 关闭连接0
非常感谢您提前的时间!