【发布时间】:2017-12-08 16:59:09
【问题描述】:
我刚刚在 Qt 中开发了一个使用 WebSocket 服务器 (QWebSocketServer) 的应用程序。我在 Linux 下执行此操作,一切正常,但是当我在 Mac OS 上运行代码时,我无法从 Chrome 上的网页连接到服务器。
连接需要很长时间,几分钟后我从 Chrome 收到了WebSocket opening handshake timed out。
最后我回到了基础,尝试了Qt的例子:
http://doc.qt.io/qt-5/qtwebsockets-sslechoserver-example.html
完全一样。
编辑:
移除 SSL 并使用不安全的 websocket 后,它可以工作,即使在同一个端口上。
Mac 上的 Chrome 可以访问远程(非 Mac)计算机上的安全 Qt WebSocket 服务器,但远程计算机上的 Chrome 在连接到 Mac 时(安全)超时 - 所以它似乎有问题Qt QWebSocketServer 示例。它在 Linux 和 Windows 上都能正常工作。
正在建立连接(因为如果应用程序未运行或关闭,网络浏览器会立即失败),但无论出于何种原因,它都没有完成。
知道这可能是什么,或者我可以如何尝试追踪它吗?
谢谢!
【问题讨论】:
-
Mac防火墙是否开启?
-
否 - 我首先检查了 :) 我实际上可以使用 netcat 建立连接,但似乎对发送的任何内容都没有响应。
标签: c++ macos qt google-chrome websocket