添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

具体分析如下:

错误现象有其一

  1. 使用 QNetworkAccessManager 请求一个https网址后,返回不到任何数据。
  2. Qt版本为5.9.9以下。
  3. openSSL版本为1.0.x。
  4. 调用 QNetworkAccessManager 类的 supportedSchemes() 查看支持的协议,只有HTTP,没有HTTPS。
  5. 使用抓包软件连发送包都抓不到。

解决方案

使用更高级的Qt版本,至少是5.9.9,即2019年底以后发布的版本。

只需要使用更新的Qt版本即可。 并不需要下载openSSL,也不需要添加几行代码。

网上较为流行的添加两个dll文件的方式,已经不适用于现有版本。

具体原因

Qt自2019年年底就结束了OpenSSL1.0.x的支持,5.9.9是2019年年底发布,所以在5.9.9之前的版本均无法使用。

验证成功与否

  1. 调用 QNetworkAccessManager 类的 supportedSchemes() 查看支持的协议。
  2. 调用 QSslSocket 类的静态方法 supportsSsl() 看返回是否为真。

如有其它Qt的https请求问题也可在评论区指出,我看我是否遇到过,能否尽一点微薄之力。

如果对您有帮助,希望能够点赞,收藏支持一波。非常感谢。

Qt之SSL问题

Qt中https请求返回总是空值错误现象有以下几点:使用QNetworkAccessManager请求一个https网址后,返回不到任何数据。Qt版本为5.9.9以下。openSSL版本为1.0.x。调用QNetworkAccessManager类的supportedSchemes()查看支持的协议,只有HTTP,没有HTTPS。使用抓包软件甚至连发送包都抓不到。解决方案:使用更高级的Qt版本,至少是5.9.9,即2019年底以后发布的版本。只需要使用更新的Qt版本即可。并不需要下载o
1、排查原因 调用reply的error()方法,输出一下错误的log,错误原因是远端服务器拒绝连接。我在电脑的浏览器访问这个url是没有 问题 的,网上有人说是代理的 问题 ,打开电脑的 http 代理,访问成功! qDebug()<<"reply : "<<reply->error(); //reply-> DBG("replyFinished=========%d", reply->error()); if (reply->error() == QNetworkReply::NoError) QPixmap pix; bool bload = pix.load
最近在做涉及网络相关的应用是程序时,发现使用windeploy qt 发布程序后,放到未装 QT 的电脑上,程序能够正常运行,唯独 http post方式接收到信息为空,由于调用的是百度的接口,所以基本可以排除后台的 问题 。        于是比较两台电脑的差异,发现装了 QT 的电脑环境变量 添加了D:\ Qt \ Qt 5.7.0\5.7\mingw53_32\bin 目录,将环境变量删除后,发现在装...
最近发现一个 问题 ,当表单有这个参数的时候  “enctype="multipart/form-data" 用post提交,参数全部都是null,用get就可以正常提交, 原来是    multipart/form-data适用于文件上传,会转化成二进制数据,这样传value的话就会以二进制的方式传过去,所以request就获取不到值了 如果要用post,要把“enctype="multipar...
QNetworkAccessManager *manager = new QNetworkAccessManager(this); qDebug() &lt;&lt; manager-&gt;supportedSchemes(); 返回 的结果: (“ftp”, “file”, “qrc”, “h...
直通车 问题 描述原因解决说一句话 问题 描述 Qt 5。用QNetworkAccessManager 拉取某网站数据。代码基本正确;QNetworkReply.error 返回 0,表明无错误发生;但readAll 返回 空字符串。 注意,此情况多出现在 Qt 5及以下。 仅针对我的情况。 RedirectPolicy(重定向规则)设置错误: 该网站发生了重定向,而QNetworkAccessManager 默认的RedirectPolicy是:
参考博客: QT 开发(八)—— Network网络操作,本地HOST,GET 请求 _刘桂林的博客-CSDN博客_ qt network Qt :60---网络编程之 HTTP 通信(QNetworkRequest、QNetworkReply、NetworkAccessManager)_董哥的黑板报-CSDN博客 Qt 学习笔记一: Qt 使用network模块进行 http 请求 时获取response http 状态码_chexiaohui6306的博客-CSDN博客 一、开始进行使用网络通信的时候,需要在 qt 的pro 加.