JSON is a very common standard to transmit data objects. go provides great support for JSON. JSON package in standard library provides the methods to work with JSON in a go program. Generally we use JSON to tranmit the data but sometime we need to print the JSON data too. If a human eye is going to look at that data, it is a good idea to pretty print that JSON. Here is small function that will do that:
func prettyPrintJSON(b []byte) ([]byte, error) {
var out bytes.Buffer
err := JSON.Indent(&out, b, "", " ")
return out.Bytes(), err
}
This function takes a byte array and indent the JSON. Each element in JSON object begins on a new line.