From 887c16c5807e6a99be2a6823da1dafd094d341d1 Mon Sep 17 00:00:00 2001 From: Anthony Lapenna Date: Thu, 30 Aug 2018 12:21:53 +0200 Subject: [PATCH] feat(api): display details in error response (#2228) --- api/http/error/error.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/api/http/error/error.go b/api/http/error/error.go index b9153a8a6..244397fdf 100644 --- a/api/http/error/error.go +++ b/api/http/error/error.go @@ -16,7 +16,8 @@ type ( Err error } errorResponse struct { - Err string `json:"err,omitempty"` + Err string `json:"err,omitempty"` + Details string `json:"details,omitempty"` } ) @@ -31,7 +32,7 @@ func writeErrorResponse(rw http.ResponseWriter, err *HandlerError) { log.Printf("http error: %s (err=%s) (code=%d)\n", err.Message, err.Err, err.StatusCode) rw.Header().Set("Content-Type", "application/json") rw.WriteHeader(err.StatusCode) - json.NewEncoder(rw).Encode(&errorResponse{Err: err.Message}) + json.NewEncoder(rw).Encode(&errorResponse{Err: err.Message, Details: err.Err.Error()}) } // WriteError is a convenience function that creates a new HandlerError before calling writeErrorResponse.