package handler import ( "encoding/json" "net/http" ) // respondJSON writes a JSON response with the given status code. func respondJSON(w http.ResponseWriter, status int, data any) { w.Header().Set("Content-Type", "application/json") w.WriteHeader(status) if data != nil { if err := json.NewEncoder(w).Encode(data); err != nil { http.Error(w, `{"error":"failed to encode response"}`, http.StatusInternalServerError) } } } // respondError writes a JSON error response. func respondError(w http.ResponseWriter, status int, message string) { respondJSON(w, status, map[string]string{"error": message}) }