# README
go-middleware
Golang middleware collection
Middleware is value that have following type
func(http.HandlerFunc) http.HandlerFunc
In following example, testMiddleware
is a middleware that adding some header to the response
var handler http.HandlerFunc = ...
var someMiddleware func(next http.HandlerFunc) http.HanlderFunc = ...
testMiddleware := func(next http.HandlerFunc) http.HanlderFunc {
return func(w http.ResponseWriter, r *http.Request) {
w.Header().Add("TestHeader", "test value")
next(w, r)
}
}
combinedHandler := someMiddleware(testMiddleware(handler))
Use httpchain package to chaining multiple middleware, so you can write
combinedHandler := httpchain.Chain(
someMiddleware,
testMiddleware,
handler,
)
# Packages
Package panicreporter provide middleware to report any golang panic.
Package reqlogger provide logger middleware for every http request.
No description provided by the author