GitPedia

Handlers

Package gorilla/handlers is a collection of useful middleware for Go HTTP services & web applications 🛃

From gorilla·Updated June 12, 2026·View on GitHub·

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: The project is written primarily in Go, distributed under the BSD 3-Clause "New" or "Revised" License license, first published in 2013. It has gained significant community traction with 1,741 stars and 279 forks on GitHub. Key topics include: go, golang, gorilla, gorilla-web-toolkit, handler.

Latest release: v1.5.2Release v1.5.2
November 5, 2023View Changelog →

gorilla/handlers

Testing
Codecov
GoDoc
Sourcegraph

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:

Other handlers are documented on the Gorilla
website
.

Example

A simple example using handlers.LoggingHandler and handlers.CompressHandler:

go
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)) }

License

BSD licensed. See the included LICENSE file for details.

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from gorilla/handlers via the GitHub API.Last fetched: 6/23/2026