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 sends a JSON error response with the given status code and message. // It preserves the application/json Content-Type set by middleware. func RespondError(w http.ResponseWriter, status int, msg string) { w.Header().Set("Content-Type", "application/json") w.WriteHeader(status) _ = json.NewEncoder(w).Encode(map[string]string{"error": msg}) }