项目简介
本项目是一个运用Go语言和Gin框架搭建的实时多人聊天室应用。借助WebSocket协议达成实时通信,具备群聊、私聊、用户在线状态查看以及消息历史查看等功能。其目标是提供一个简洁、高效的在线聊天系统,适合学习与实践Gin框架及WebSocket的运用。
项目的主要特性和功能
- 用户管理:支持用户登录和注册,避免重复登录。
- 群聊功能:支持多房间聊天,用户可在不同房间发送文字、表情和图片。
- 私聊功能:支持用户间私密聊天,且有消息提醒。
- 历史消息查看:用户能查看历史消息,支持点击加载更多。
- 心跳检测:通过WebSocket心跳机制维持连接稳定。
- 静态资源内嵌:利用Golang 1.16的
embed
功能内嵌HTML、CSS、JS等静态资源,运行仅依赖编译后的可执行文件和MySQL数据库。 - 协议支持:支持HTTP/WS和HTTPS/WSS协议,保障通信安全。
安装使用步骤
- 环境准备:确保已安装Go语言环境(版本 >= 1.16),并正确设置环境变量。
- 获取代码:通过git将项目代码复制到本地:
bash git clone <项目仓库地址>
- 数据库设置:导入项目中的SQL文件以创建所需的数据库表:
bash mysql -u your_username -p your_database < sql/go_gin_chat.sql
- 配置设置:复制并修改配置文件:
bash cp conf/config.go.env conf/config.go
根据实际情况修改数据库连接信息、服务器端口等配置。 - 运行应用:启动应用:
bash go run main.go
- 浏览器访问:在浏览器中访问应用地址(默认端口为8322),即可开始使用。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】