Respuestas:
Utilice http.ResponseWriter.WriteHeader
. De la documentación:
WriteHeader envía un encabezado de respuesta HTTP con código de estado. Si no se llama a WriteHeader explícitamente, la primera llamada a Write activará un WriteHeader implícito (http.StatusOK). Por tanto, las llamadas explícitas a WriteHeader se utilizan principalmente para enviar códigos de error.
Ejemplo:
func ServeHTTP(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http.StatusInternalServerError)
w.Write([]byte("500 - Something bad happened!"))
}
Además WriteHeader(int)
, puede utilizar el método auxiliar http.Error , por ejemplo:
func yourFuncHandler(w http.ResponseWriter, r *http.Request) {
http.Error(w, "my own error message", http.StatusForbidden)
// or using the default message error
http.Error(w, http.StatusText(http.StatusNotFound), http.StatusNotFound)
}
Los métodos http.Error () y http.StatusText () son tus amigos
w.WriteHeader(http.StatusInternalServerError)
w.WriteHeader(http.StatusForbidden)
lista completa aquí
http: superfluous response.WriteHeader call