Documentation
¶
Index ¶
- Constants
- func AdminOnly(allowedRoles ...string) gin.HandlerFunc
- func Auth(cfg *config.Config) gin.HandlerFunc
- func CORS() gin.HandlerFunc
- func GetRequest[T any](c *gin.Context) (*T, error)
- func InitSentry(config SentryConfig) error
- func InitTracing(config TracingConfig) (*sdktrace.TracerProvider, error)
- func Logger() gin.HandlerFunc
- func MustGetRequest[T any](c *gin.Context) *T
- func Pprof(r *gin.Engine)
- func RateLimit() gin.HandlerFunc
- func Recovery() gin.HandlerFunc
- func SecurityHeaders() gin.HandlerFunc
- func Sentry() gin.HandlerFunc
- func Tracing(serviceName string) gin.HandlerFunc
- func Validation(req interface{}) gin.HandlerFunc
- type SentryConfig
- type TracingConfig
Constants ¶
View Source
const ValidatedRequestKey = "validatedRequest"
Variables ¶
This section is empty.
Functions ¶
func AdminOnly ¶
func AdminOnly(allowedRoles ...string) gin.HandlerFunc
AdminOnly 管理员权限中间件 注意:此中间件需要配合 Casbin 或用户角色系统使用 使用方法:在路由中添加 middleware.AdminOnly("admin") 来限制只有管理员可访问
func InitTracing ¶
func InitTracing(config TracingConfig) (*sdktrace.TracerProvider, error)
InitTracing 初始化 OpenTelemetry
func MustGetRequest ¶
MustGetRequest 从上下文中获取已验证的请求对象,如果不存在或类型不匹配则 panic
func Validation ¶
func Validation(req interface{}) gin.HandlerFunc
Validation 通用请求参数绑定与验证中间件 req: 请求参数结构体的指针,例如 &dto.CreateUserRequest{} 该中间件会自动根据请求方法(GET/POST等)选择绑定 Query 或 JSON 并自动进行参数校验
Types ¶
type SentryConfig ¶
SentryConfig Sentry 配置
type TracingConfig ¶
TracingConfig OpenTelemetry 配置
Click to show internal directories.
Click to hide internal directories.