Skip to content

bread-ovO/chatroom

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GoChat - 实时多人聊天室 🚀 项目简介

GoChat 是一个基于 Go 语言和 WebSocket 协议构建的实时多人聊天室应用。它允许用户通过浏览器连接到聊天室,发送消息,并实时查看其他在线用户的消息和状态。

✨ 主要功能

实时聊天:所有连接的用户可以即时发送和接收消息。
昵称唯一性:确保每个用户在聊天室中的昵称是独一无二的,避免混淆。
实时在线用户列表:客户端会动态显示当前聊天室中所有在线用户的昵称列表。
用户状态通知:当有用户加入或离开聊天室时,系统会发送通知消息。
基本错误处理:例如,昵称已被占用时会给出明确提示。

🚀 快速开始

  1. 克隆仓库

首先,将项目克隆到你的本地: Bash

git clone https://github.com/bread-ovO/chatroom.git cd chatroom

  1. 初始化并下载 Go 模块依赖

在项目根目录下,初始化 Go 模块并下载所需的依赖: Bash

go mod init chatroom # 如果你已经有 go.mod 且模块名是 chatroom,可以跳过此步 go mod tidy

  1. 运行应用程序

确保你在 chatroom 项目的根目录下,然后运行: Bash

go run .

如果一切顺利,你将看到类似以下的输出:

2025/06/04 08:22:34 Server started on :8080

  1. 访问聊天室

在你的浏览器中打开以下地址:

http://localhost:8080 💡 使用指南

输入昵称:在页面顶部的输入框中输入你喜欢的昵称。
加入聊天:点击 "加入聊天" 按钮。如果昵称已被占用,系统会提示你更换。
开始聊天:成功加入后,在底部的输入框中输入消息,按回车或点击 "发送" 按钮即可发送。
查看在线用户:右侧会实时显示当前聊天室中的在线用户列表。
多用户测试:你可以打开多个浏览器标签页或使用不同浏览器,输入不同昵称,来模拟多用户聊天的场景。

📈 未来改进方向 (V2.0 更多计划)

本项目仍有许多可以扩展和优化的空间:

-[ ] 消息持久化:将聊天记录保存到数据库(如 SQLite, PostgreSQL)或文件,新用户加入时可以加载历史消息。 -[ ] 私聊功能:允许用户向特定在线用户发送私密消息。 -[ ] 聊天房间/频道:支持创建多个独立的聊天房间,用户可以选择加入不同的房间。 -[ ] 用户认证与授权:引入用户注册/登录系统,增强安全性。 -[ ] 前端优化:使用现代前端框架(如 React, Vue, Angular)构建更丰富的 UI。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors