diff options
author | 2019-12-03 13:17:51 +0100 | |
---|---|---|
committer | 2019-12-03 13:17:51 +0100 | |
commit | 23e3e8525135507f5084c0a4627812d4c0083106 (patch) | |
tree | a98aee30f89ee2be5657ea2adfff71437b2e2aba /server.go | |
parent | be14524c3384c88f0a5b0d64c4584abcc6ae0665 (diff) | |
download | alps-23e3e8525135507f5084c0a4627812d4c0083106.tar.gz alps-23e3e8525135507f5084c0a4627812d4c0083106.tar.bz2 alps-23e3e8525135507f5084c0a4627812d4c0083106.zip |
Set HTTP error handler
Diffstat (limited to 'server.go')
-rw-r--r-- | server.go | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -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} |