From e2a40bc7a6808170a989c3d26d49c440836c514f Mon Sep 17 00:00:00 2001 From: Umputun Date: Thu, 6 Jan 2022 01:07:50 -0600 Subject: [PATCH] update rest library for proper 404 content type --- app/proxy/proxy_test.go | 14 ++++++++++++++ go.mod | 2 +- go.sum | 2 ++ vendor/github.com/go-pkgz/rest/file_server.go | 1 + vendor/modules.txt | 2 +- 5 files changed, 19 insertions(+), 2 deletions(-) diff --git a/app/proxy/proxy_test.go b/app/proxy/proxy_test.go index cae6946..7b18716 100644 --- a/app/proxy/proxy_test.go +++ b/app/proxy/proxy_test.go @@ -282,6 +282,20 @@ func TestHttp_DoWithAssetsCustom404(t *testing.T) { body, err := io.ReadAll(resp.Body) require.NoError(t, err) assert.Equal(t, "not found! blah blah blah\nthere is no spoon", string(body)) + t.Logf("%+v", resp.Header) + assert.Equal(t, "text/html; charset=utf-8", resp.Header.Get("Content-Type")) + } + + { + resp, err := client.Get("http://localhost:" + strconv.Itoa(port) + "/static/bad2.html") + require.NoError(t, err) + defer resp.Body.Close() + assert.Equal(t, http.StatusNotFound, resp.StatusCode) + body, err := io.ReadAll(resp.Body) + require.NoError(t, err) + assert.Equal(t, "not found! blah blah blah\nthere is no spoon", string(body)) + t.Logf("%+v", resp.Header) + assert.Equal(t, "text/html; charset=utf-8", resp.Header.Get("Content-Type")) } } diff --git a/go.mod b/go.mod index c3cd766..0367a08 100644 --- a/go.mod +++ b/go.mod @@ -8,7 +8,7 @@ require ( github.com/felixge/httpsnoop v1.0.2 // indirect github.com/go-pkgz/lgr v0.10.4 github.com/go-pkgz/repeater v1.1.3 - github.com/go-pkgz/rest v1.12.0 + github.com/go-pkgz/rest v1.12.1 github.com/golang/protobuf v1.5.2 // indirect github.com/gorilla/handlers v1.5.1 github.com/prometheus/client_golang v1.11.0 diff --git a/go.sum b/go.sum index b1ef24e..b140576 100644 --- a/go.sum +++ b/go.sum @@ -83,6 +83,8 @@ github.com/go-pkgz/rest v1.11.0 h1:Z//qgmM0NhBYfhXYEP/aJtDVLK5XlJGxqcb4sHFNN0E= github.com/go-pkgz/rest v1.11.0/go.mod h1:wZ/dGipZUaF9to0vIQl7PwDHgWQDB0jsrFg1xnAKLDw= github.com/go-pkgz/rest v1.12.0 h1:zabW9ZLZzSyGsrTtEgzGUhGCfqcPnCr5nhfrap96mU4= github.com/go-pkgz/rest v1.12.0/go.mod h1:KUWAqbDteYGS/CiXftomQsKjtEOifXsJ36Ka0skYbmk= +github.com/go-pkgz/rest v1.12.1 h1:s5EoHrHknaioHT/mGWaRMDk9GH2U/FmGMWQsCMj6III= +github.com/go-pkgz/rest v1.12.1/go.mod h1:KUWAqbDteYGS/CiXftomQsKjtEOifXsJ36Ka0skYbmk= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= diff --git a/vendor/github.com/go-pkgz/rest/file_server.go b/vendor/github.com/go-pkgz/rest/file_server.go index 49b67d8..fab1691 100644 --- a/vendor/github.com/go-pkgz/rest/file_server.go +++ b/vendor/github.com/go-pkgz/rest/file_server.go @@ -155,6 +155,7 @@ type respWriter404 struct { func (w *respWriter404) WriteHeader(status int) { w.status = status + w.Header().Set("Content-Type", "text/html; charset=utf-8") w.ResponseWriter.WriteHeader(status) } diff --git a/vendor/modules.txt b/vendor/modules.txt index ffc6532..7ed8322 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -26,7 +26,7 @@ github.com/go-pkgz/lgr ## explicit; go 1.12 github.com/go-pkgz/repeater github.com/go-pkgz/repeater/strategy -# github.com/go-pkgz/rest v1.12.0 +# github.com/go-pkgz/rest v1.12.1 ## explicit; go 1.16 github.com/go-pkgz/rest github.com/go-pkgz/rest/logger