• 在线聊天室

    在线聊天室

    本示例通过两种形式展示了如何实现一个在线聊天室应用:

    • 使用长轮询模式。
    • 使用 WebSocket 模式。

    以上两种模式均默认将数据存储在内存中,因此每次启动都会被重置。但您也可以通过修改 conf/app.conf 中的设置来启用数据库。

    以下为项目组织大纲:

    1. WebIM/
    2. WebIM.go # main 包的文件
    3. conf
    4. app.conf # 配置文件
    5. controllers
    6. app.go # 供用户选择技术和用户名的欢迎页面
    7. chatroom.go # 数据管理相关的函数
    8. longpolling.go # 长轮询模式的控制器和方法
    9. websocket.go # WebSocket 模式的控制器和方法
    10. models
    11. archive.go # 操作数据相关的函数
    12. views
    13. ... # 模板文件
    14. static
    15. ... # JavaScript 和 CSS 文件

    到 GitHub 上浏览代码