package helper import ( "encoding/json" "log" "net/http" ) type jsonError struct { Message string `json:"error"` } func WriteInternalError(err error, writer http.ResponseWriter) { log.Printf("internal server error: %s\n", err) http.Error(writer, "internal server error", http.StatusInternalServerError) } func WriteErrorJson(message string, writer http.ResponseWriter, code int) { json_error := &jsonError{ Message: message, } marshal, err := json.Marshal(json_error) if err != nil { http.Error(writer, err.Error(), http.StatusInternalServerError) return } http.Error(writer, string(marshal), code) } // Logs the error and responds with a generic server error. func WriteInternalErrorJson(err error, writer http.ResponseWriter) { log.Printf("internal server error: %s\n", err) WriteErrorJson("internal server error", writer, http.StatusInternalServerError) }