Package handlers is a collection of handlers (aka "HTTP middleware") for use with Go's net/http
package (or any framework supporting http.Handler
), including:
map[string]http.Handler
r.RemoteAddr
and r.URL.Scheme
based on the X-Forwarded-For
, X-Real-IP
, X-Forwarded-Proto
and RFC7239 Forwarded
headers when running a Go server behind a HTTP reverse proxy.Other handlers are documented on the Gorilla website.
A simple example using handlers.LoggingHandler
and handlers.CompressHandler
:
import ( "net/http" "github.com/gorilla/handlers" ) func main() { r := http.NewServeMux() // Only log requests to our admin dashboard to stdout r.Handle("/admin", handlers.LoggingHandler(os.Stdout, http.HandlerFunc(ShowAdminDashboard))) r.HandleFunc("/", ShowIndex) // Wrap our server with our gzip handler to gzip compress all responses. http.ListenAndServe(":8000", handlers.CompressHandler(r)) }
BSD licensed. See the included LICENSE file for details.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4