Decompress
El middleware Decompress descomprime el body del request HTTP cuando el header
Content-Encoding está establecido en gzip.
Todo el middleware principal reside en el paquete middleware:
import "github.com/labstack/echo/v5/middleware"e.Use(middleware.Decompress())Configuración personalizada
Sección titulada «Configuración personalizada»e := echo.New()e.Use(middleware.DecompressWithConfig(middleware.DecompressConfig{ Skipper: middleware.DefaultSkipper,}))Configuración
Sección titulada «Configuración»DecompressConfig · github.com/labstack/echo/v5@5196b9b
Las descripciones de los campos se generan a partir de comentarios del código fuente en inglés.
| Campo | Tipo | Descripción | Fuente |
|---|---|---|---|
Skipper | Skipper | Skipper defines a function to skip middleware. | L19 |
GzipDecompressPool | Decompressor | GzipDecompressPool defines an interface to provide the sync.Pool used to create/store Gzip readers | L22 |
MaxDecompressedSize | int64 | MaxDecompressedSize limits the maximum size of decompressed request body in bytes. If the decompressed body exceeds this limit, the middleware returns HTTP 413 error. This prevents zip bomb attacks where small compressed payloads decompress to huge sizes. Default: 100 * MB (104,857,600 bytes) Set to -1 to disable limits (not recommended in production). | L29 |
Configuración por defecto
Sección titulada «Configuración por defecto»// Effective defaults applied when fields are left unset.DecompressConfig{ Skipper: DefaultSkipper, GzipDecompressPool: &DefaultGzipDecompressPool{}, MaxDecompressedSize: 100 * MB,}