func FormatAndReturnJSONResponse()

in pkg/server/httpserver.go [107:122]


func FormatAndReturnJSONResponse(res http.ResponseWriter, data interface{}) {
	res.Header().Set("Content-Type", "application/json")

	var err error
	var metadataPrettyJSON []byte
	if metadataPrettyJSON, err = json.MarshalIndent(data, "", "\t"); err != nil {
		log.Fatalf("Error while attempting to format data %s for response: %s", data, err)
	}

	// In order to align with IMDS formatting, it is necessary to indent the response
	// EXCEPT FOR values of type list, ex: marketplaceProductCodes
	metadataPrettyJSON = removeIndentFromLists(metadataPrettyJSON)
	res.Write(metadataPrettyJSON)
	log.Println("Returned JSON mock response successfully.")
	return
}