c++ - 如何让 Qt Websocket 和 QNetworkRequest (HTTP) 使用同一个连接?

标签 c++ qt poco-libraries qtwebsockets qtwebapp

Qt 是否可以将处理普通 HTTP 请求的 HTTP 连接升级到具有相同连接的 Websocket?

我正在考虑类似 this 的事情使用 Poco 库,但都在 Qt 中完成,类​​似于 QtWebApp .

最佳答案

简单的答案是否定的,这主要是因为服务器端的具体情况。 Qt 只是遵循服务器 (HTTP/WebSocket) 可用和公开的协议(protocol),主要是客户端开发框架,而 AFAIK 将无法进行您想要从 HTTP 到 Websocket 的两种不同的转换协议(protocol)。但当然,理论上只要两种协议(protocol)都能够使用 IP 端口 80 就可以做到这一点。但这意味着新的唯一服务器和新的唯一客户端实现。

我们在我们的应用程序中同时使用 WebSocket 和 REST。而WebSocket是服务端触发客户端做某事的。客户端从服务器获取“poke”并开始与服务器进行正常的基于 JSON HTTP 的交换。

相对链接:https://softwareengineering.stackexchange.com/questions/276253/mixing-rest-and-websocket-in-the-same-api

关于c++ - 如何让 Qt Websocket 和 QNetworkRequest (HTTP) 使用同一个连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33058907/

相关文章:

c++ - 将 lexical_cast 字符串提升为两倍

c++ - QPainter 组合模式示例无法按预期工作

c++ - POCO websocket 异常

c++ - 使用 Poco SocketReactor 处理多线程的好方法是什么?

c++ - ACE vs Boost vs POCO

c++ - 在C/C++中快速读取多个文件的某些字节

c++ - boost 信号和插槽在不同线程中不工作(使用 boost::asio::io_service)

c++ - 如何在不卡住线程/应用程序的情况下减慢方法执行速度?

c++ - 模板类重写基类虚函数

c++ - 如何在 Qt 中调整图像大小以按比例缩放?