This commit is contained in:
blankhex committed 2026-10-21 19:41:26 +03:00
commit 97dc0a3570
78 files changed
+7054

No files matched your search

+25
View File
@@ -0,0 +1,25 @@
package middleware
import (
"net/http"
)
type Middleware func(http.Handler) http.Handler
type MiddlewareChain []Middleware
func (c MiddlewareChain) Then(finalHandler http.Handler) http.Handler {
for i := len(c) - 1; i >= 0; i-- {
finalHandler = c[i](finalHandler)
}
return finalHandler
}
func (c MiddlewareChain) ThenFunc(finalHandler http.HandlerFunc) http.Handler {
result := http.Handler(finalHandler)
for i := len(c) - 1; i >= 0; i-- {
result = c[i](result)
}
return result
}