refactor: 统一错误消息数据源,优化错误码与映射表管理
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 4m36s
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 4m36s
主要改动: - 改造 errors.New() 和 Wrap() 函数签名为可变参数,优先使用 errorMessages 映射表 - 添加 allErrorCodes 注册表和 init() 启动时校验,确保错误码与映射表一致 - 添加 TestAllCodesHaveMessages 和 TestNoOrphanMessages 测试防止映射表腐化 - 清理 109 处与映射表一致的冗余硬编码(service 层) - 保留业务特定消息覆盖能力 新增 API 用法: - errors.New(errors.CodeUnauthorized) // 使用映射表默认消息 - errors.New(errors.CodeNotFound, "提现申请不存在") // 覆盖为自定义消息
This commit is contained in:
@@ -65,7 +65,6 @@ type LogRotationConfig struct {
|
||||
|
||||
// MiddlewareConfig contains middleware settings
|
||||
type MiddlewareConfig struct {
|
||||
EnableAuth bool `mapstructure:"enable_auth"` // Enable keyauth middleware
|
||||
EnableRateLimiter bool `mapstructure:"enable_rate_limiter"` // Enable limiter (default: false)
|
||||
RateLimiter RateLimiterConfig `mapstructure:"rate_limiter"` // Rate limiter settings
|
||||
}
|
||||
@@ -141,7 +140,6 @@ logging:
|
||||
compress: true
|
||||
|
||||
middleware:
|
||||
enable_auth: true
|
||||
enable_rate_limiter: false # Disabled by default
|
||||
rate_limiter:
|
||||
max: 100 # requests
|
||||
@@ -771,7 +769,6 @@ Example:
|
||||
|
||||
| Field | Type | Required | Constraint | Default | Error Message |
|
||||
|-------|------|----------|------------|---------|---------------|
|
||||
| `middleware.enable_auth` | bool | No | true or false | `true` | "middleware.enable_auth: must be boolean (true/false)" |
|
||||
| `middleware.enable_rate_limiter` | bool | No | true or false | `false` | "middleware.enable_rate_limiter: must be boolean (true/false)" |
|
||||
|
||||
#### Rate Limiter Validation
|
||||
|
||||
@@ -99,7 +99,6 @@ logging:
|
||||
compress: true
|
||||
|
||||
middleware:
|
||||
enable_auth: true
|
||||
enable_rate_limiter: false # Disabled by default
|
||||
rate_limiter:
|
||||
max: 100 # requests
|
||||
@@ -356,7 +355,6 @@ Edit `configs/config.yaml`:
|
||||
|
||||
```yaml
|
||||
middleware:
|
||||
enable_auth: true
|
||||
enable_rate_limiter: true # 设置为 true 启用限流
|
||||
rate_limiter:
|
||||
max: 5 # 每个窗口最大请求数(测试用低值)
|
||||
@@ -799,7 +797,7 @@ logging:
|
||||
development: true # Pretty-printed logs (non-JSON)
|
||||
|
||||
middleware:
|
||||
enable_auth: false # Optional: disable auth for easier testing
|
||||
enable_rate_limiter: false # Optional: disable rate limiter for easier testing
|
||||
```
|
||||
|
||||
**Usage**:
|
||||
|
||||
Reference in New Issue
Block a user