qt https请求依赖openssl的库
qt5.13.0 依赖OpenSSL 1.1.1b可以使用如下命令查看
qDebug() << QSslSocket::supportsSsl() << QSslSocket::sslLibraryBuildVersionString() << QSslSocket::sslLibraryVersionString();
将对应的库拷贝到应用程序目录即可,可以从http://slproweb.com/products/Win32OpenSSL.html 下载对应的版本安装后从对应的目录拷
OpenSSL从1.1.0开始已经更改了库的名字,不再是libeay32,ssleay32,而是libcrypto和libssl
libcrypto-1_1.dll
libssl-1_1.dll
有了正确的库之后就可以和http一样请求
如果对方的证书有问题我们需要关闭证书校验才能正确请求
QSslConfiguration config;
config.setPeerVerifyMode(QSslSocket::VerifyNone);
config.setProtocol(QSsl::TlsV1_2);
requestInfo.setSslConfiguration(config);