Update handlers.go

Added teapot as default response
pull/904/head
Andrew Gerhold 2020-11-27 15:19:52 -08:00 committed by GitHub
parent 1e66d3a470
commit af1d6aa8e0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 6 additions and 4 deletions

View File

@ -212,7 +212,7 @@ func returnJson(d interface{}, w http.ResponseWriter, r *http.Request) {
json.NewEncoder(w).Encode(d)
}
func returnResponseCode(d interface{}, w http.ResponseWriter, r *http.Request) {
func returnResponseCode(s *Service, w http.ResponseWriter, r *http.Request) {
if e, ok := d.(errors.Error); ok {
w.WriteHeader(e.Status())
json.NewEncoder(w).Encode(e)
@ -224,13 +224,15 @@ func returnResponseCode(d interface{}, w http.ResponseWriter, r *http.Request) {
return
}
// https://golang.org/src/net/http/server.go?s=3003:5866#L150
// Go does not currently
// support sending user-defined 1xx informational headers,
// with the exception of 100-continue response header that the
// Server sends automatically when the Request.Body is read.
w.WriteHeader(http.StatusOK)
json.NewEncoder(w).Encode(d)
// https://golang.org/src/net/http/server.go?s=3003:5866#L150
if LastStatusCode >= 100 {
w.WriteHeader(s.LastStatusCode)
}
return w.WriteHeader(http.StatusTeapot)
}
// error404Handler is a HTTP handler for 404 error pages