Qt WebChannel ChatServer 范例

简单聊天服务器,实现使用 QWebChannel C++ API.

ChatServer 提供聊天服务, Qt WebChannel ChatClient QML 范例 and Qt WebChannel ChatClient HTML 范例 可以连接。

运行范例

要运行范例从 Qt Creator ,打开 Welcome 模式,然后选择范例从 Examples 。更多信息,拜访 构建和运行范例 .

实现聊天服务器

C++ 应用程序实现 QObject ,提供聊天服务要求的所有机制。此对象被发布透过 QWebChannel 其使用 WebSocket 作为传输。

服务器提供基本 login 方法 (仅用户名,无密码),必须被成功援引在客户端能够聊天之前。登录后,客户端可以援引方法 sendMessage 和接收信号 newMessage 以编写和接收消息。此外, userList 特性提供所有其它已连接的客户端的名称。此外,服务器发送 keepAlive 信号以周期性调用客户端。客户端必须响应此信号,否则客户端将被移除从 userList 特性。

范例展示如何把基本 QObject 元素用于 QWebChannel ,那是信号 ( newMessage ),槽 ( sendMessage ),及特性 ( userList ).

因为这是纯服务器应用程序,需要单独客户端与之进行交互。 Qt WebChannel ChatClient QML 范例 and Qt WebChannel ChatClient HTML 范例 是兼容此服务器的客户端实现。

范例工程 @ code.qt.io