Windows上让Qt支持https请求

一.前言

Qt默认其实支持https的,但需要openssl的支持。所以有时候你代码中写了支持https的请求连接,发现程序可以运行,但到了https请求时会报错,如下:

这就是没有openssl的支持,导致QSslSocket无法进行https请求。若需要支持https,则需要openssl的支撑,并且要注意,Qt不同版本会指定对应的openssl版本库,比方我用的Qt5.15.10他要求用的openssl版本是1.1.1,你就不能用其他版本,不然基本就是失败报错。

如何查看Qt对应openssl的版本呢?

在程序可以执行的任何地方加上这两句

cpp 复制代码
include <QSslSocket>
//查看需要的openssl版本
QString strVersion = "QSslSocket="<<QSslSocket::sslLibraryBuildVersionString();
 //查看是否支持
bool bExist = (QSslSocket::supportsSsl() == true ? "true" : "false");

二.windows环境

1.在windows环境中需要安装openssl,并将openssl释放的"libcrypto"和"libssl"的库打包进你的程序依赖目录中,比如我用的openssl1.1.1g版本,那就将该版本openssl安装后,取出其安装目录下的"libcrypto-1_1.dll"和"libssl-1_1.dll"放置在我们自己的程序依赖目录下即可。
openssl1.1.1g版本的windows安装包

如果需要源码包,准备使用Cmake自行编译,点击此处下载openssl的源码包

将上图中安装目录下的这两个库取出来放在你的程序目录

相关推荐
一个人旅程~1 小时前
《七重时间的织锦》-致初七
windows·经验分享·笔记·微信公众平台
Boxsc_midnight4 小时前
【windows电脑浏览器直接访问虚拟机或云端openclaw的方法】一个不需要HTTPS的安全连接通道(基于SSH)
windows·安全·https·openclaw
开开心心就好4 小时前
内存清理软件灵活设置,自动阈值快捷键清
运维·服务器·windows·pdf·harmonyos·risc-v·1024程序员节
「QT(C++)开发工程师」4 小时前
【Qt Creator 15.0.1 安装指南】
开发语言·qt
先做个垃圾出来………5 小时前
pytest冒烟测试用例过滤执行实例
windows·测试用例·pytest
love530love5 小时前
Windows 多 Git 环境冲突:一个环境变量优先级引发的血案
人工智能·windows·git·环境变量·scoop
pursue.dreams5 小时前
Windows 安装 RabbitMQ 保姆级教程
windows·rabbitmq
Zhu_S W5 小时前
EasyExcel动态表头详解
java·linux·windows
Max_uuc5 小时前
【架构心法】炸毁巨石阵:从单体巨兽到微内核 (Microkernel) 插件化架构的 Qt C++ 工业软件演进
c++·qt·架构
「QT(C++)开发工程师」5 小时前
# [特殊字符] Day 1:Qt 信号槽原理深入 - 核心学习笔记
c++·qt