【发布时间】:2012-02-25 16:21:08
【问题描述】:
我有一个基于 Qt QWebKit 的应用程序,它需要使用 HTTPS 与网页对话。我已经下载了 QtSDK 以及 OpenSSL 二进制文件 (from here)。
我的问题在于部署我的应用程序。我已将相关的 Qt DLL 文件以及相关的 OpenSSL DLL 文件(libeay32.dll 和 ssleay32.dll)复制到我的应用程序目录中,但是当我尝试从我的应用程序中访问 HTTPS 网页时,它失败了!应用程序没有崩溃,但页面是空白的。常规的 HTTP 页面可以正常工作。
很明显,我通过应用程序分发 OpenSSL 的方式存在错误,我只是不确定哪里出错了。
我真的不想将 OpenSSL 安装程序与我的应用程序捆绑在一起。
【问题讨论】:
-
您确定要检查所有呼叫站点的 OpenSSL 错误返回并可能记录或显示意外错误结果吗?我可以很容易地想象系统上缺少证书存储或无效日期/时间导致证书链验证错误在“正常”测试期间可能不会弹出......
-
这是一个很好的观点。我在别处读到未处理的 OpenSSL 错误会导致 HTTPS 页面的加载停止。就我而言,我正在处理所有 OpenSSL 错误(通过忽略它们),但我的 QNetworkManager 从未调用错误处理程序。
标签: windows qt openssl qwebkit