Go Encodage JSON de base


Exemple

json.Marshal du package "encoding/json" encode une valeur sur JSON.

Le paramètre est la valeur à encoder. Les valeurs renvoyées sont un tableau d'octets représentant l'entrée codée JSON (en cas de succès) et une erreur (en cas d'échec).

decodedValue := []string{"foo", "bar"}

// encode the value
data, err := json.Marshal(decodedValue)

// check if the encoding is successful
if err != nil {
    panic(err)
}

// print out the JSON-encoded string
// remember that data is a []byte
fmt.Println(string(data))
// "["foo","bar"]"

Cour de récréation

Voici quelques exemples de base de codage pour les types de données intégrés:

var data []byte

data, _ = json.Marshal(1)
fmt.Println(string(data))
// 1

data, _ = json.Marshal("1")
fmt.Println(string(data))
// "1"

data, _ = json.Marshal(true)
fmt.Println(string(data))
// true

data, _ = json.Marshal(map[string]int{"London": 18, "Rome": 30})
fmt.Println(string(data))
// {"London":18,"Rome":30}

Cour de récréation

Encoder des variables simples est utile pour comprendre comment fonctionne l'encodage JSON dans Go. Cependant, dans la réalité, vous allez probablement encoder des données plus complexes stockées dans des structures .