diff --git a/etcdserver/etcdhttp/client_test.go b/etcdserver/etcdhttp/client_test.go index a5abc7403..94cf601e6 100644 --- a/etcdserver/etcdhttp/client_test.go +++ b/etcdserver/etcdhttp/client_test.go @@ -1124,7 +1124,7 @@ func TestBadServeKeys(t *testing.T) { }, http.StatusInternalServerError, - "Internal Server Error", + `{"message":"Internal Server Error"}`, }, { // etcdserver.Server etcd error @@ -1144,7 +1144,7 @@ func TestBadServeKeys(t *testing.T) { }, http.StatusInternalServerError, - "Internal Server Error", + `{"message":"Internal Server Error"}`, }, } for i, tt := range testBadCases { diff --git a/etcdserver/etcdhttp/http.go b/etcdserver/etcdhttp/http.go index 1ec48b7be..20d4404e3 100644 --- a/etcdserver/etcdhttp/http.go +++ b/etcdserver/etcdhttp/http.go @@ -51,7 +51,8 @@ func writeError(w http.ResponseWriter, err error) { e.WriteTo(w) default: log.Printf("etcdhttp: unexpected error: %v", err) - http.Error(w, "Internal Server Error", http.StatusInternalServerError) + herr := httptypes.NewHTTPError(http.StatusInternalServerError, "Internal Server Error") + herr.WriteTo(w) } }