Documentation
¶
Overview ¶
Package middleware provides Echo middleware implementations.
Index ¶
- func Casbin(enforcer *casbin.Enforcer, config *CasbinConfig) echo.MiddlewareFunc
- func ErrorHandler(err error, c echo.Context)
- func JWT(config *JWTConfig) echo.MiddlewareFunc
- func Recovery() echo.MiddlewareFunc
- func RequestLogger() echo.MiddlewareFunc
- type CasbinConfig
- type JWTConfig
- type ValidationError
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Casbin ¶
func Casbin(enforcer *casbin.Enforcer, config *CasbinConfig) echo.MiddlewareFunc
Casbin returns an authorization middleware using Casbin.
func ErrorHandler ¶
ErrorHandler is the centralized error handler for Echo.
func JWT ¶
func JWT(config *JWTConfig) echo.MiddlewareFunc
JWT returns a JWT authentication middleware.
func RequestLogger ¶
func RequestLogger() echo.MiddlewareFunc
RequestLogger returns a request logging middleware.
Types ¶
type CasbinConfig ¶
type CasbinConfig struct {
// Enabled controls whether Casbin is enabled.
Enabled bool
// SkipPaths are paths that skip authorization.
SkipPaths []string
// AdminUsers are users that bypass authorization.
AdminUsers []string
// UserGetter extracts user from context.
UserGetter func(c echo.Context) (string, error)
// EnforceHandler performs custom authorization logic.
EnforceHandler func(c echo.Context, user string) (bool, error)
}
CasbinConfig holds Casbin middleware configuration.
func CreateCasbinConfig ¶
func CreateCasbinConfig(enabled bool, skipPaths []string, adminUsers []string) *CasbinConfig
CreateCasbinConfig creates Casbin config from parameters.
func DefaultCasbinConfig ¶
func DefaultCasbinConfig() *CasbinConfig
DefaultCasbinConfig returns default Casbin configuration.
type JWTConfig ¶
type JWTConfig struct {
// SigningKey is the secret key for JWT validation.
SigningKey []byte
// SkipPaths are paths that skip JWT validation.
SkipPaths []string
// Enabled controls whether JWT is enabled.
Enabled bool
// ClaimsFunc creates a new claims instance.
ClaimsFunc func(c echo.Context) jwt.Claims
}
JWTConfig holds JWT middleware configuration.
func CreateJWTConfig ¶
CreateJWTConfig creates JWT config from parameters.
func DefaultJWTConfig ¶
func DefaultJWTConfig() *JWTConfig
DefaultJWTConfig returns default JWT configuration.
type ValidationError ¶
type ValidationError struct {
Field string `json:"field"`
Message string `json:"message"`
Value any `json:"value,omitempty"`
}
ValidationError represents a validation error.
func (*ValidationError) Error ¶
func (e *ValidationError) Error() string
Click to show internal directories.
Click to hide internal directories.