我正在寻找 C++ 中的客户端 TLS 连接示例。最适合 Visual Studio,但老实说,它可以是任何编译器。我找到了几个 C 样本。但是没有人工作。我从 C 中的这个示例开始: https ://wiki.openssl.org/index.php/SSL/TLS_Client
但它失败了
res = BIO_do_connect(web);
如果我想连接到我自己的 node.js 服务器(使用直接 IP 地址)或使用 encrypted.google.com 作为 url 连接到“错误的主机名查找”,则使用“系统库”。使用 libressl 和 Visual Studio 2013。
下一站: http: //fm4dd.com/openssl/sslconnect.htm
这里程序运行成功。但是任何尝试在最后写入 SSL 连接:
std::string json = "{'test':'huhu'}";
char buff[1024];
sprintf(buff, "POST /test.de HTTP/1.1 \nHost: test.de\nContent-Type: application/json\nContent-Length: %d\n\n", json.length());
std::string post = buff;
int snd = SSL_write(ssl, post.data(), post.length());
snd = SSL_write(ssl, json.data(), json.length());
强制服务器关闭连接(我不知道到底发生了什么,因为我现在不知道如何告诉 node.js 告诉我更多信息)。
因此,我搜索了一个工作示例或如何使用在 C++ 中运行的自己的证书获得 TLS 连接