15 lines
454 B
Go
15 lines
454 B
Go
|
|
// SPDX-License-Identifier: AGPL-3.0-or-later
|
||
|
|
|
||
|
|
// Package middleware provides HTTP middleware for auth, security, and request processing.
|
||
|
|
package middleware
|
||
|
|
|
||
|
|
import "net/http"
|
||
|
|
|
||
|
|
// Chain wraps a handler with a stack of middleware, applied in order
|
||
|
|
// (the last middleware listed is the outermost wrapper).
|
||
|
|
func Chain(h http.Handler, middlewares ...func(http.Handler) http.Handler) http.Handler {
|
||
|
|
for _, m := range middlewares {
|
||
|
|
h = m(h)
|
||
|
|
}
|
||
|
|
return h
|
||
|
|
}
|