package httpresponse import ( "encoding/json" "net/http" ) // JSON writes a JSON response with pretty printing (indented) func JSON(w http.ResponseWriter, code int, data interface{}) error { w.Header().Set("Content-Type", "application/json") w.WriteHeader(code) encoder := json.NewEncoder(w) encoder.SetIndent("", " ") return encoder.Encode(data) } // OK writes a 200 JSON response with pretty printing func OK(w http.ResponseWriter, data interface{}) error { return JSON(w, http.StatusOK, data) } // Created writes a 201 JSON response with pretty printing func Created(w http.ResponseWriter, data interface{}) error { return JSON(w, http.StatusCreated, data) } // NoContent writes a 204 No Content response func NoContent(w http.ResponseWriter) { w.WriteHeader(http.StatusNoContent) }