Qt WebChannel ChatServer 示例
一个简单的聊天服务器,使用 QWebChannel C++ API 实现。
ChatServer 提供一个聊天服务,Qt WebChannel ChatClient QML 应用程序和 Qt WebChannel ChatClient HTML 示例都可以连接到。
运行示例
要从 Qt Creator 运行示例,请打开 欢迎 模式并从 示例 中选择示例。有关更多信息,请访问 构建和运行示例。
实现聊天服务器
C++ 应用程序实现了一个 QObject,它提供了实现聊天服务所需的所有机制。此对象通过 QWebChannel 发布,该通道使用 WebSocket 作为传输。
服务器提供基本 login
方法(仅用户名,没有密码),客户端必须在能够聊天之前成功调用它。登录后,客户端可以调用 sendMessage
方法并接收 newMessage
信号来发送和接收消息。此外,还有一个 userList
属性,它提供了所有其他已连接客户端的名称。此外,服务器会定期向所有客户端发送 keepAlive
信号。客户端必须响应该信号,否则客户端将从 userList
属性中删除。
示例展示了如何使用 QWebChannel 使用基本的 QObject 元素,即信号(newMessage
)、槽(sendMessage
)和属性(userList
)。
由于这是一个纯服务器应用程序,因此需要单独的客户端才能与之交互。与该服务器兼容的客户端实现包括 Qt WebChannel ChatClient QML 应用程序 和 Qt WebChannel ChatClient HTML 示例。
© 2024 The Qt Company Ltd。此文档中包含的文档贡献者是各自所有者的版权拥有者。此处提供的文档根据由自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款许可。Qt 和相应的标志是芬兰和/或其他国家/地区的 The Qt Company Ltd. 的商标。所有其他商标均为其各自所有者的财产。