From 23e3e8525135507f5084c0a4627812d4c0083106 Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Tue, 3 Dec 2019 13:17:51 +0100 Subject: [PATCH] Set HTTP error handler --- server.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/server.go b/server.go index a853687..4bdd15b 100644 --- a/server.go +++ b/server.go @@ -162,6 +162,17 @@ func New(imapURL string) *echo.Echo { e.Logger.Fatal(err) } + e.HTTPErrorHandler = func(err error, c echo.Context) { + code := http.StatusInternalServerError + if he, ok := err.(*echo.HTTPError); ok { + code = he.Code + } else { + c.Logger().Error(err) + } + // TODO: hide internal errors + c.String(code, err.Error()) + } + e.Use(func(next echo.HandlerFunc) echo.HandlerFunc { return func(ectx echo.Context) error { ctx := &context{Context: ectx, server: s}