Compression
Gzip response compression middleware. Compresses responses when the client
includes Accept-Encoding: gzip in the request.
Usage
r.Use(middleware.Compress())
Configuration
r.Use(middleware.CompressWithLevel(gzip.BestSpeed))
CompressWithLevel accepts an integer compression level (1 = BestSpeed, 9 = BestCompression).
How It Works
- Checks
Accept-Encodingheader forgzip - Wraps the response writer with a
gzip.Writer - Sets
Content-Encoding: gzipandVary: Accept-Encodingheaders - Skips compression for already-encoded responses (e.g., images)