c++ - Qt5 SSL 支持

标签 c++ qt ssl network-programming

我要发出一个网络 API 请求:

QNetworkAccessManager networkManager
QUrlQuery urlQuery;
urlQuery.setQuery("https://lalala.com/login");
urlQuery.addQueryItem("submit", "");
urlQuery.addQueryItem("email", "email@email.com");
urlQuery.addQueryItem("pass", "unbelievable_password");
QNetworkRequest request;
request.setUrl(QUrl(urlQuery.query()));

QNetworkReply* reply = networkManager.get(request);

const QString jsonDataString = (QString) reply->readAll();

问题是我在执行这段代码的过程中有以下输出:

QSslSocket: cannot resolve TLSv1_1_client_method
QSslSocket: cannot resolve TLSv1_2_client_method
QSslSocket: cannot resolve TLSv1_1_server_method
QSslSocket: cannot resolve TLSv1_2_server_method
QSslSocket: cannot resolve SSL_select_next_proto
QSslSocket: cannot resolve SSL_CTX_set_next_proto_select_cb
QSslSocket: cannot resolve SSL_get0_next_proto_negotiated
QSslSocket: cannot call unresolved function SSL_get0_next_proto_negotiated

我的 .pro 文件包含库定义:LIBS += -lcrypto -lssl,但是它的存在并没有改变任何东西。

调用 QSslSocket::supportsSsl() 返回 1

openssl version 的执行返回 OpenSSL 0.9.8za 2014 年 6 月 5 日

系统是Mac OS X Yosemite,Qt版本是5.4.0

如何调用 https ?即使当我调用根本不需要任何 SSL 的 http://ip.jsontest.com 时,这些错误也存在。

最佳答案

很可能您必须安装新版本的 OpenSSL。

关于c++ - Qt5 SSL 支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27709255/

相关文章:

c++ - 为 int8_t 和 uint8_t 专门化此模板函数的更好方法是什么?

c++ - Visual Studio 2008 : Use external Debug-DLL for Debug-Run and external Release-DLL for Release-Run

c++ - 一个字节中的两个值

c++ - 如何在 QComboBox 中显示文件夹 c++ 和 Qt 中的文件列表?

django - 如何一起使用django-urls-sugar和ssl中间件?

php - curl 错误SSL证书无法获得本地颁发者证书 - 最近的开发

c++ - 串行通信读取始终不工作

c++ - 了解qmake工程文件中的Term\\\"$$PWD/\\\"

c++ - QT如何将Qlist传递给类构造函数

go - 基于 TLS 的 WebSocket : Golang/Gorilla