Kern
Middleware guides

Middleware - RequestGuard

Detailed guide to middleware.RequestGuard for per-route request policy enforcement (body, headers, content type, and size).

middleware.RequestGuard

Applies strict request validation policies at route level.

Signature

func RequestGuard(configs ...RequestGuardConfig) kern.MiddlewareFunc

Example

import "github.com/mobentum/kern/middleware"

app.AddConstraints("POST", "/upload", kern.Constraints{
    Validate: middleware.RequestGuard(middleware.RequestGuardConfig{
        MaxBodyBytes:      8 << 20,
        RequireBody:       true,
        RequireHeaders:    []string{"X-Tenant"},
        AllowContentTypes: []string{"application/json", "multipart/form-data"},
    }),
}, uploadHandler)

Best practices

  • Apply only where strict policy is required.
  • Pair with observability for deny-path monitoring.