Skip to content

kyarurat/Ratopia-WS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ratopia WebSocket 项目文档

项目简介

Ratopia WebSocket 是一个基于 Spring Boot 的 WebSocket 服务端应用,主要用于处理实时通信需求。该项目支持用户身份验证、心跳检测以及安全令牌管理,适用于需要实时交互的场景,例如在线聊天、实时通知等。

主要功能

  • WebSocket 通信:提供稳定的 WebSocket 连接支持,用于实时数据传输。
  • 用户身份验证:通过 Token 验证用户身份,确保连接的安全性。
  • 心跳检测机制:支持客户端心跳检测,维持连接状态。
  • 日志记录:使用 Logback 记录系统运行日志,便于调试和监控。
  • 异常处理:提供统一的异常处理机制,增强系统的健壮性。

技术栈

  • Java 17+
  • Spring Boot
  • WebSocket
  • Lombok
  • MyBatis Plus
  • Logback
  • Maven

项目结构

  • src/main/java:Java 源代码目录
    • cn/ratopia:主程序入口和核心模块
    • cn/ratopia/core:核心功能模块,包括安全、模型等
    • cn/ratopia/system:系统相关模块,包括实体、枚举、异常等
  • src/main/resources:资源文件目录
    • application.yml:主配置文件
    • logback.xml:日志配置文件
  • pom.xml:Maven 项目配置文件

快速开始

环境要求

  • Java 17 或更高版本
  • Maven 3.8 或更高版本
  • Git

构建与运行

  1. 克隆项目:

    git clone https://gitee.com/kyaru_rat/Ratopia-WS.git
    cd Ratopia-WS
  2. 构建项目:

    mvn clean package
  3. 运行项目:

    java -jar target/Ratopia-WS.jar

配置说明

  • 修改 application.yml 文件以配置数据库连接、Token 秘钥、过期时间等参数。
  • 日志配置可通过 logback.xml 文件进行调整。

使用说明

  • 客户端通过 WebSocket 连接至服务器,并发送 Token 进行身份验证。
  • 服务器会定期检测客户端心跳,若超时未收到心跳包,则断开连接。
  • 用户信息通过 LoginUser 类进行封装,支持 Spring Security 的 UserDetails 接口。

异常处理

  • 所有异常均继承自 BaseException,可通过模块名、错误码和错误信息进行区分。
  • 建议在开发过程中使用统一的异常捕获机制,以保证系统的稳定性。

贡献指南

欢迎贡献代码!请遵循以下步骤:

  1. Fork 项目
  2. 创建新分支 (git checkout -b feature/new-feature)
  3. 提交更改 (git commit -am 'Add some feature')
  4. 推送分支 (git push origin feature/new-feature)
  5. 创建 Pull Request

许可证

本项目采用 Apache-2.0 许可证。详情请查看 LICENSE 文件。

About

WebSocket服务端

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages