# 三叉戟 Websocket 服务之golang版 **Repository Path**: trident-framework/golang-websocket-service ## Basic Information - **Project Name**: 三叉戟 Websocket 服务之golang版 - **Description**: Golang websocket服务 - **Primary Language**: Go - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-11-23 - **Last Updated**: 2025-10-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Golang WebSocket 服务 ## 介绍 这是一个基于 Golang 的 WebSocket 服务,支持客户端通过 WebSocket 或 HTTP 协议发送和接收消息。项目使用 Gin 框架提供 HTTP 接口,并通过 Melody 库实现 WebSocket 通信。 ## 软件架构 - **WebSocket 服务**:提供客户端直接通过 WebSocket 连接并发送消息的功能。 - **HTTP 接口**:允许客户端通过 HTTP 请求发送消息。 - **控制器**:包括 `BroadcastController`、`ChatController` 和 `IndexController`,用于处理不同的请求。 - **工具模块**:提供初始化配置、WebSocket 客户端/服务器实现以及通用帮助函数。 ## 安装教程 1. 安装依赖: ```bash go mod tidy go get github.com/olahol/melody@v1.1.5 go get github.com/gin-gonic/gin@v1.10.0 go get github.com/gorilla/websocket@v1.5.0 ``` ## 使用说明 1. **JavaScript 客户端示例**: ```javascript const ws = new WebSocket("ws://localhost:8000/ws"); ws.onopen = () => { console.log("Connected"); ws.send("Hello Server"); }; ws.onmessage = (event) => { console.log("Received:", event.data); }; ``` 2. **发送 HTTP 请求**: 使用 `curl` 或其他 HTTP 客户端向服务端发送请求,例如: ```bash curl -X POST http://localhost:8000/api/broadcast -d '{"message":"Hello"}' ``` ## 配置 - 配置文件位于 `config/app.yml`,可配置环境、服务器名称、主机和端口等信息。 ## 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 创建 Pull Request ## 特技 1. 使用 `Readme_XXX.md` 支持多语言文档,如 `Readme_en.md`、`Readme_zh.md`。 2. 了解更多关于 Gitee 的信息,请访问 [Gitee 官方博客](https://blog.gitee.com)。 3. 探索 Gitee 上的优秀开源项目:[https://gitee.com/explore](https://gitee.com/explore)。 4. GVP(Gitee 最有价值开源项目)是综合评定出的优秀开源项目。 5. Gitee 官方使用手册:[https://gitee.com/help](https://gitee.com/help)。 6. Gitee 封面人物是一档展示 Gitee 会员风采的栏目:[https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)。