Skip to main content

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-Encoding header for gzip
  • Wraps the response writer with a gzip.Writer
  • Sets Content-Encoding: gzip and Vary: Accept-Encoding headers
  • Skips compression for already-encoded responses (e.g., images)