Gzip
O middleware Gzip comprime a response HTTP usando o esquema de compressão gzip.
Todo o middleware principal fica no pacote middleware:
import "github.com/labstack/echo/v5/middleware"e.Use(middleware.Gzip())Configuração customizada
Seção intitulada “Configuração customizada”e := echo.New()e.Use(middleware.GzipWithConfig(middleware.GzipConfig{ Level: 5,}))e := echo.New()e.Use(middleware.GzipWithConfig(middleware.GzipConfig{ Skipper: func(c *echo.Context) bool { return strings.Contains(c.Path(), "metrics") // change "metrics" to your own path },}))Configuração
Seção intitulada “Configuração”GzipConfig · github.com/labstack/echo/v5@5196b9b
As descrições dos campos são geradas dos comentários do código-fonte em inglês.
| Campo | Tipo | Descrição | Código |
|---|---|---|---|
Skipper | Skipper | Skipper defines a function to skip middleware. | L27 |
Level | int | Gzip compression level. Optional. Default value -1. | L31 |
MinLength | int | Length threshold before gzip compression is applied. Optional. Default value 0. Most of the time you will not need to change the default. Compressing a short response might increase the transmitted data because of the gzip format overhead. Compressing the response will also consume CPU and time on the server and the client (for decompressing). Depending on your use case such a threshold might be useful. See also: https://webmasters.stackexchange.com/questions/31750/what-is-recommended-minimum-object-size-for-gzip-performance-benefits | L44 |
Configuração padrão
Seção intitulada “Configuração padrão”// Effective defaults applied when fields are left unset.GzipConfig{ Skipper: DefaultSkipper, Level: -1, MinLength: 0,}