Chris Chris - 6 months ago 10
JSON Question

Creating JSON array in Go

How do I construct and send a JSON array with Go?

For example:

{ myArray: ["one", "two", "three"] }


At the moment the closest I can get it sending JSON down to the browser as a string like this:

{ myArrayString: '["once", "two", "three"]' }


Which is not what I'm trying to achieve.

Answer

Quite straightforward as @swoogan comments:

package main

import (
    "encoding/json"
    "fmt"
)

type myJSON struct {
    Array []string
}

func main() {
    jsondat := &myJSON{Array: []string{"one", "two", "three"}}
    encjson, _ := json.Marshal(jsondat)
    fmt.Println(string(encjson))
}

Demo avaliable here.