# 基于Gofarme的快速开发后台管理系统 **Repository Path**: lookgos1/bls-pull-admin ## Basic Information - **Project Name**: 基于Gofarme的快速开发后台管理系统 - **Description**: 自己用的后台管理系统 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-04 - **Last Updated**: 2025-09-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # pull-admin-hd 管理系统 ## 项目简介 pull-admin-hd 是一个基于 Go 语言开发的后台管理系统,采用 GF 框架构建。系统提供了管理员管理、客户管理、角色权限管理、媒体资源管理等核心功能,支持 JWT 认证和基于角色的访问控制(RBAC)。 ## 功能特性 - **多角色认证系统**:支持管理员和普通用户两种身份认证 - **细粒度权限控制**:基于 RBAC 模型实现创建、读取、更新、删除等操作权限控制 - **媒体资源管理**:支持文件上传、列表展示和删除操作 - **系统安全机制**: - 登录密码错误次数限制 - 验证码生成与验证 - JWT 令牌认证与刷新 - **限流保护**:接口请求频率限制(默认每秒100次) - **Swagger API 文档**:自动生成并支持自定义 UI 展示 ## 目录结构 ``` pull-admin-hd/ ├── api/ # API 接口定义 ├── internal/ │ ├── controller/ # 控制器层(MVC 模式) │ ├── logic/ # 业务逻辑层 │ ├── model/ # 数据模型定义 │ ├── dao/ # 数据访问层 │ └── consts/ # 常量定义 ├── resource/ # 静态资源文件 ├── utility/ # 工具类函数 │ ├── auth/ # 认证授权相关 │ ├── cache/ # 缓存管理 │ ├── db/ # 数据库操作辅助 │ ├── encrypt/ # 加密解密功能 │ └── jwt/ # JWT 令牌处理 ├── hack/ # 构建配置 ├── manifest/ # 部署相关配置 └── cmd/ # 主程序入口 ``` ## 核心技术栈 - **Go 框架**:[GF Framework](https://goframe.org) - **数据库**:MySQL/MariaDB(通过 gdb 模块支持) - **认证授权**:JWT + 自定义中间件实现 RBAC - **接口文档**:Swagger UI - **缓存系统**:文件缓存适配器 - **前端界面**:配套 pull-admin-qd 项目(React + Ant Design) ## 快速启动 1. 克隆项目: ```bash git clone https://gitee.com/lookgos1/bls-pull-admin.git ``` 2. 安装依赖: ```bash go mod tidy ``` 3. 配置数据库: 修改 `manifest/config.yaml` 中的数据库连接信息 4. 初始化数据库: 导入 `resource/sql/pull-admin v1.2.sql` 文件 5. 启动服务: ```bash go run main.go ``` 服务默认运行在 `http://localhost:8000` ## API 文档 访问 [http://localhost:8000/swagger](http://localhost:8000/swagger) 查看自动生成的 API 文档 ## 安全配置 - 默认密码错误限制:5次/3分钟 - 验证码限制:10次/3分钟 - JWT 令牌有效期:默认1小时 - 敏感操作日志记录 ## 部署说明 - 支持 Docker 部署(Dockerfile 在 resource/docker/ 目录) - 提供 Kubernetes 部署配置(manifest/deploy/kustomize/ 目录) - 静态文件服务配置: - 上传文件:`/uploads` 路径 - Swagger UI:`/swagger` 路径 ## 开发规范 - 代码风格:遵循 Go 官方编码规范 - 日志记录:使用 GF 框架内置日志模块 - 错误处理:统一错误处理机制 - 配置管理:使用 config.yaml 配置文件 ## 贡献指南 1. Fork 项目 2. 创建新分支 3. 提交代码更改 4. 创建 Pull Request ## 许可证 本项目采用 MIT 许可证,请查看 LICENSE 文件获取详细信息。