From 8467b2cee674ad205b452780ca88abb1b27643c8 Mon Sep 17 00:00:00 2001 From: 6543 <6543@obermui.de> Date: Tue, 26 May 2020 11:45:40 +0200 Subject: [PATCH] return 500 error msg only if not Production mode --- modules/context/api.go | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/modules/context/api.go b/modules/context/api.go index 8005036c8c..b8d4250fa9 100644 --- a/modules/context/api.go +++ b/modules/context/api.go @@ -69,6 +69,7 @@ type APIRedirect struct{} // If status is 500, also it prints error to log. func (ctx *APIContext) Error(status int, title string, obj interface{}) { var message string + if err, ok := obj.(error); ok { message = err.Error() } else { @@ -77,6 +78,10 @@ func (ctx *APIContext) Error(status int, title string, obj interface{}) { if status == http.StatusInternalServerError { log.ErrorWithSkip(1, "%s: %s", title, message) + + if macaron.Env == macaron.PROD { + message = "" + } } ctx.JSON(status, APIError{ @@ -90,8 +95,13 @@ func (ctx *APIContext) Error(status int, title string, obj interface{}) { func (ctx *APIContext) InternalServerError(err error) { log.ErrorWithSkip(1, "InternalServerError: %v", err) + var message string + if macaron.Env != macaron.PROD { + message = err.Error() + } + ctx.JSON(http.StatusInternalServerError, APIError{ - Message: err.Error(), + Message: message, URL: setting.API.SwaggerURL, }) }