问题标签 [qsslsocket]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
66 浏览

c++ - 使用 QtNetwork 类的最小依赖是什么

我想在我的共享库中使用QTcpSocketQSslSocket,但我因需要创建QCoreApplication. 也许我弄错了,没有必要创建QtCoreApplication?使用 Qt Sockets 的最小依赖是什么?

0 投票
1 回答
3829 浏览

c++ - Qt Ssl 错误(QSslSocket:无法解析 TLSv1_1_client_method)

使用 QWebView 的 setUrl(" https://www.bing.com ") 时出现以下错误:

错误:

  • QSslSocket:无法解析 TLSv1_1_client_method
  • QSslSocket:无法解析 TLSv1_2_client_method
  • QSslSocket:无法解析 TLSv1_1_server_method
  • QSslSocket:无法解析 TLSv1_2_server_method

我使用的是 qt5.2.1(x86),windows 8 64 位操作系统 pc。如何解决这个问题?

0 投票
1 回答
566 浏览

c++ - 每当 WebKit 尝试加载 HTML 时,Qt 应用程序就会崩溃

我正在将 Qt 4.7.4 与 C++ 一起使用,并且正在尝试将带有一些 flash 元素的 html 文档嵌入到 Qt 应用程序中。首先,我在主窗口中添加了一个 QWebView 小部件并尝试加载存储在我的硬盘上的 html 文档,这导致了一个错误,因此我查找了 Qt 示例并尝试在此处运行 youtube 查看器示例:http://qt -project.org/wiki/Embed_YouTube_Video_in_QWebView

尝试运行程序时,我两次都遇到了同样的问题:

我使用了依赖walker,它指出QSslSocket在我的发布文件夹中的QNetwork4.dll中(它是发布版本)。我的 QTDIR 环境变量也指向正确的位置,并且 bin 文件夹的位置在我的路径变量中。

所以我想知道这里是否有人可以帮助我。我也在使用visual studio 2005(不幸的是使用Qt 4.7.4和vs 2005在这种情况下是我无法控制的)

0 投票
1 回答
6636 浏览

c++ - 如何在 Qt 上使用 TLS 协议?

请举一个服务器端的例子,它显示使用 TLS。

现在我有以下代码:

如何将其更改为先使用协议 TLS,然后再使用 SSL?

常见的任务是编写一个支持 SNI 的服务器。

0 投票
1 回答
10793 浏览

c++ - 如何处理 QSslSocket:无法解决 TLSv1_1_client_method 错误

我正在尝试开发一个可以连接到谷歌地图并使用谷歌地图 GPS 参数获取地图的程序。所以我有一个问题,当我编译代码并单击运行按钮时,我在应用程序输出中看到这些错误:

QSslSocket:无法解析 TLSv1_1_client_method

QSslSocket:无法解析 TLSv1_2_client_method

QSslSocket:无法解析 TLSv1_1_server_method

QSslSocket:无法解析 TLSv1_2_server_method

我搜索了很多但找不到任何答案,我也尝试安装 open-ssl v1.0.1 和 v .98 但仍然一无所获。

MY Qt 版本:Qt Creator 3.0.1 基于 Qt 5.2.1

这是我的代码:

主窗口.h

主窗口.cpp

非常感谢。

0 投票
4 回答
25462 浏览

qt - 不使用 SSL 时出现 QSslSocket 错误

我在我的两个 Qt 应用程序中注意到这个输出,它们使用 QNetworkRequest 从外部通过 QNeworkRequest 加载一些数据:

导致出现这些警告的请求示例之一是

我有理由确定任何查询都没有涉及 TLS/SSL,都是纯 HTTP。无论 URL 是什么,消息总是在发送第一个请求后出现。我根本无意使用 SSL,代码中没有提到 SSL,这意味着我不能以编程方式忽略警告。

我的设置是 Windows 7 64 位、MSVC2013 和 MinGW、Qt 5.3.2。无论使用何种编译器,都会显示这些消息。没有安装 OpenSSL 或其他 SSL 开发库。

问题是:我如何摆脱这些警告?

0 投票
1 回答
259 浏览

qt - 服务器内存增长

我正在用 C++/Qt 开发下载服务器。我正面临内存增长的问题。在这里,我分享示例服务器应用程序来演示该问题。

当客户端连接时,它开始每秒发送 10Kb 数据块。当客户端断开连接时,套接字将被删除。

关于它有两个问题:

1)为什么下载时内存不断增长?

我正在使用 200-300 个连接进行测试。它在几分钟内达到 400 Mb,并且不会停止。

在 Client::sendData 我检查 this->sock->bytesToWrite() 以了解是否有等待写入的内容。因此,在所有内容都写入之前,永远不会添加新数据。所有数据块的大小都相同,因此它不可能为新数据分配更多内存。

2)为什么关闭所有连接时不返回所有内存?

尽管客户端断开连接时下载时使用的内存会下降,但看起来并没有全部返回。经过几次建立 200-700 个连接的测试,它达到了 80 Mb,并且在根本没有客户端的情况下一直保持在那个水平(客户端对象都被报告被破坏,实例计数器变为零)。

我正在阅读有关对象删除和内存释放之间的区别。据我了解,系统可能会将其保留以备将来需要(某种优化)。但是当其他东西需要它时,它肯定必须返回该内存。我决定写一个小程序,分配大量内存(即数组),看看是否会让系统赎回服务器使用的内存。它没有。该程序崩溃,因为没有足够的内存(服务器刚启动时它工作正常)。

所以看起来有什么问题。我怀疑泄漏,但内存泄漏检测器似乎没有发现任何严重的问题。Visual Leak Detector 报告没有内存泄漏。Valgrind 报告了一些问题,但它们指向 Qt 库,而我正在阅读它们只是误报,通常只是低级库在 valgrind 之后释放内存的副作用。无论如何,据报道丢失数据的总大小与 80 Mb 相比非常小。

0 投票
1 回答
903 浏览

qt - 在具有 OpenSSL 支持的 Windows 上构建 PyQt5?

我正在尝试使用 SSL 支持构建 PyQt5,但是直到现在,我都没有成功。

我做了什么:

  • 使用 OpenSSL 支持重建 Qt:好的

    /li>
  • 安装 SIP:确定

    /li>
  • 安装 PyQt5:好的

    • 编辑configure.py文件,'printsupport'在 QtWebKitWidgets ModuleMetadata 上添加一个:

      'QtWebKitWidgets': ModuleMetadata(qmake_QT=['webkitwidgets', 'printsupport']),

      代替

      'QtWebKitWidgets': ModuleMetadata(qmake_QT=['webkitwidgets']),

    • 之后(或之前?)mingw32-make,删除该行

      -strip C:$(INSTALL_ROOT)\Python34\pyuic5.bat

      从目标install_pyuic5

  • 测试:不行

    /li>

所以,我的问题是:

  1. 我做错什么了吗?
  2. 是否需要其他配置?

为什么我要问...如果一切正常,我正在尝试访问(使用 QWebview)一些httpsURL,并且我得到很多或 SSL 错误,例如:

先感谢您!

0 投票
1 回答
1109 浏览

ssl - QSslSocket 错误:找不到颁发者证书

我正在 Windows 上开发一个应该连接到服务器的应用程序。因此我实现了一个 QSslSocket。

连接方法执行后 sslSocket errorString 发送

找不到本地查找的证书的颁发者证书。为此目的,根 CA 证书不受信任。

证书很好,但我无法解释为什么没有建立连接。有人知道如何解决这个问题吗?

0 投票
1 回答
8070 浏览

qt - QSslSocket:无法解析 SSLV2_client_method

我在 debian wheezy 中使用 Qt 5.4.1 中的 QSslSocket 创建了一个 sslclient 和 sslserver。当我运行程序时,它们根本不工作。在调试我的代码后,我看到当它尝试从中创建一个新对象时,在构造函数中QSslSocket返回此错误(cannot resolve SSLV2_client_method)。

这是我的代码块: