[MM-57070] Remove detailed_error from errors when not in dev mode (#26414)
* remove detailed error from appErr.ToJSON * Revert "remove detailed error from appErr.ToJSON" This reverts commit 3c2fa7352d7a3bc7216b8e073179161779169d4b. * use WipeDetailed instead of err.DetailedError = "" * fix tests --------- Co-authored-by: Mattermost Build <build@mattermost.com>
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
9e6c06186b
Коммит
6ea363e260
@@ -1497,6 +1497,15 @@ func TestPatchPost(t *testing.T) {
|
||||
})
|
||||
|
||||
t.Run("invalid requests", func(t *testing.T) {
|
||||
var origEnableDeveloper bool
|
||||
th.App.UpdateConfig(func(cfg *model.Config) {
|
||||
origEnableDeveloper = *cfg.ServiceSettings.EnableDeveloper
|
||||
*cfg.ServiceSettings.EnableDeveloper = true
|
||||
})
|
||||
defer th.App.UpdateConfig(func(cfg *model.Config) {
|
||||
*cfg.ServiceSettings.EnableDeveloper = origEnableDeveloper
|
||||
})
|
||||
|
||||
r, err := client.DoAPIPut(context.Background(), "/posts/"+post.Id+"/patch", "garbage")
|
||||
require.EqualError(t, err, "Invalid or missing post in request body., invalid character 'g' looking for beginning of value")
|
||||
require.Equal(t, http.StatusBadRequest, r.StatusCode, "wrong status code")
|
||||
|
||||
@@ -134,7 +134,7 @@ func returnWebSocketError(ps *PlatformService, conn *WebConn, r *model.WebSocket
|
||||
return
|
||||
}
|
||||
|
||||
err.DetailedError = ""
|
||||
err.WipeDetailed()
|
||||
errorResp := model.NewWebSocketError(r.Seq, err)
|
||||
hub.SendMessage(conn, errorResp)
|
||||
}
|
||||
|
||||
@@ -394,14 +394,14 @@ func (h Handler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
// Block out detailed error when not in developer mode
|
||||
if !*c.App.Config().ServiceSettings.EnableDeveloper {
|
||||
c.Err.DetailedError = ""
|
||||
c.Err.WipeDetailed()
|
||||
}
|
||||
|
||||
// Sanitize all 5xx error messages in hardened mode
|
||||
if *c.App.Config().ServiceSettings.ExperimentalEnableHardenedMode && c.Err.StatusCode >= 500 {
|
||||
c.Err.Id = ""
|
||||
c.Err.Message = "Internal Server Error"
|
||||
c.Err.DetailedError = ""
|
||||
c.Err.WipeDetailed()
|
||||
c.Err.StatusCode = 500
|
||||
c.Err.Where = ""
|
||||
c.Err.IsOAuth = false
|
||||
|
||||
@@ -41,7 +41,7 @@ func (wh webSocketHandler) ServeWebSocket(conn *platform.WebConn, r *model.WebSo
|
||||
mlog.String("error_message", sessionErr.SystemMessage(i18n.T)),
|
||||
mlog.Err(sessionErr),
|
||||
)
|
||||
sessionErr.DetailedError = ""
|
||||
sessionErr.WipeDetailed()
|
||||
errResp := model.NewWebSocketError(r.Seq, sessionErr)
|
||||
hub.SendMessage(conn, errResp)
|
||||
return
|
||||
@@ -63,7 +63,7 @@ func (wh webSocketHandler) ServeWebSocket(conn *platform.WebConn, r *model.WebSo
|
||||
mlog.String("error_message", err.SystemMessage(i18n.T)),
|
||||
mlog.Err(err),
|
||||
)
|
||||
err.DetailedError = ""
|
||||
err.WipeDetailed()
|
||||
errResp := model.NewWebSocketError(r.Seq, err)
|
||||
hub.SendMessage(conn, errResp)
|
||||
return
|
||||
|
||||
Ссылка в новой задаче
Block a user