优化客户端管理功能,修复创建、编辑和删除API中的问题,提升用户体验和系统稳定性。
This commit is contained in:
52
.cursor/rules/coding-standards.mdc
Normal file
52
.cursor/rules/coding-standards.mdc
Normal file
@@ -0,0 +1,52 @@
|
||||
---
|
||||
description:
|
||||
globs:
|
||||
alwaysApply: false
|
||||
---
|
||||
# 代码规范和最佳实践
|
||||
|
||||
## Go 编码规范
|
||||
|
||||
### 命名约定
|
||||
- 使用驼峰命名法
|
||||
- 包名使用小写
|
||||
- 导出的标识符必须以大写字母开头
|
||||
- 接口名通常以 -er 结尾,如 `Handler`、`Service` 等
|
||||
|
||||
### 错误处理
|
||||
- 始终检查错误返回值
|
||||
- 使用有意义的错误消息
|
||||
- 在适当的抽象层处理错误
|
||||
|
||||
### 项目特定规范
|
||||
|
||||
#### Handler 层
|
||||
参考 [handlers/admin_handler.go](mdc:handlers/admin_handler.go):
|
||||
- Handler 结构体应包含所需的服务依赖
|
||||
- 使用依赖注入模式初始化 Handler
|
||||
- HTTP 响应应使用适当的状态码
|
||||
- 统一使用 gin.H 作为模板数据传递
|
||||
|
||||
#### Service 层
|
||||
- 实现核心业务逻辑
|
||||
- 保持服务方法的单一职责
|
||||
- 避免在服务层处理 HTTP 相关逻辑
|
||||
|
||||
#### 中间件
|
||||
- 保持中间件的通用性和可重用性
|
||||
- 明确记录中间件的用途和影响
|
||||
- 合理使用中间件链
|
||||
|
||||
### 测试规范
|
||||
- 为所有关键功能编写单元测试
|
||||
- 使用表驱动测试方法
|
||||
- 测试文件命名为 `xxx_test.go`
|
||||
- 确保测试覆盖主要的成功和失败场景
|
||||
|
||||
### 安全最佳实践
|
||||
- 所有用户输入必须经过验证
|
||||
- 密码必须加密存储
|
||||
- 使用 HTTPS
|
||||
- 实现适当的访问控制
|
||||
- 遵循 OAuth2 和 OIDC 规范的安全建议
|
||||
|
||||
45
.cursor/rules/project-structure.mdc
Normal file
45
.cursor/rules/project-structure.mdc
Normal file
@@ -0,0 +1,45 @@
|
||||
---
|
||||
description:
|
||||
globs:
|
||||
alwaysApply: false
|
||||
---
|
||||
# OIDC/OAuth2 服务器项目结构
|
||||
|
||||
这是一个基于 Go 语言实现的 OIDC/OAuth2 认证服务器。
|
||||
|
||||
## 核心组件
|
||||
|
||||
### 主要入口
|
||||
- [main.go](mdc:main.go) - 应用程序的主入口点,负责初始化和启动服务器
|
||||
|
||||
### 关键目录
|
||||
- **handlers/** - HTTP 请求处理器
|
||||
- [handlers/admin_handler.go](mdc:handlers/admin_handler.go) - 管理员相关功能处理
|
||||
- **services/** - 业务逻辑层
|
||||
- **models/** - 数据模型定义
|
||||
- **middleware/** - HTTP 中间件
|
||||
- **config/** - 配置文件
|
||||
- **templates/** - HTML 模板文件
|
||||
- **utils/** - 通用工具函数
|
||||
|
||||
## 主要功能模块
|
||||
|
||||
### 管理员功能
|
||||
管理员模块提供以下功能:
|
||||
- 用户管理(创建、编辑、删除、列表)
|
||||
- 客户端应用管理
|
||||
- 管理员登录认证
|
||||
|
||||
### 认证流程
|
||||
实现了标准的 OAuth2 和 OpenID Connect 认证流程:
|
||||
- 授权码模式
|
||||
- 密码模式
|
||||
- 客户端凭证模式
|
||||
- 隐式授权模式
|
||||
|
||||
## 开发指南
|
||||
- 新增 API 端点应在 handlers/ 目录下创建对应的处理器
|
||||
- 业务逻辑应放在 services/ 目录下
|
||||
- 所有数据库模型定义应放在 models/ 目录下
|
||||
- 通用的中间件应放在 middleware/ 目录下
|
||||
|
||||
Reference in New Issue
Block a user