package mw import ( "encoding/json" "net/http" ) // RespondJSON writes a JSON response with the given status code. // The Content-Type is always set to application/json, overriding any // middleware-set value, to ensure consistent JSON error responses. func RespondJSON(w http.ResponseWriter, status int, data any) { w.Header().Set("Content-Type", "application/json") w.WriteHeader(status) _ = json.NewEncoder(w).Encode(data) } // RespondError writes a JSON error response with the given status code and message. // Use instead of http.Error() to ensure error responses are application/json. func RespondError(w http.ResponseWriter, status int, message string) { RespondJSON(w, status, map[string]string{"error": message}) }