Personalización
Echo expone un conjunto de campos en la instancia Echo que te permiten reemplazar el
comportamiento integrado con tus propias implementaciones.
Logging
Sección titulada «Logging»Echo#Logger escribe logs estructurados. El handler por defecto emite JSON a os.Stdout.
Logger personalizado
Sección titulada «Logger personalizado»El logger es un *slog.Logger, por lo que puedes registrar cualquier handler de slog:
e.Logger = slog.New(slog.NewJSONHandler(os.Stdout, nil))Validator
Sección titulada «Validator»Echo#Validator registra un validator para validar payloads de request.
Binder personalizado
Sección titulada «Binder personalizado»Echo#Binder registra un binder personalizado para binding de payloads de request.
Serializer JSON personalizado
Sección titulada «Serializer JSON personalizado»Echo#JSONSerializer registra un serializer JSON personalizado. Consulta DefaultJSONSerializer
en json.go.
Renderer
Sección titulada «Renderer»Echo#Renderer registra un renderer para renderizado de templates.
Handler de errores HTTP
Sección titulada «Handler de errores HTTP»Echo#HTTPErrorHandler registra un handler de errores HTTP personalizado.
Callback de ruta
Sección titulada «Callback de ruta»Echo#OnAddRoute registra un callback que se invoca cada vez que se agrega una nueva ruta al
router.
Extractor de IP
Sección titulada «Extractor de IP»Echo#IPExtractor controla cómo se determina la dirección IP real del cliente. Para
obtenerla de forma fiable y segura, tu aplicación debe conocer toda su infraestructura.