Quick actions

cmd+k|ctrl+k

Navigation

Languages

JSON / Parsing arbitrary JSON documents / Essential Go

Snippet info

Language

Go

Visibility

public

Author

kkowalczyk

Created

2019-03-26T10:15:56Z

Updated

2019-03-26T10:15:56Z

package main

import (
	"encoding/json"
	"fmt"
	"log"
)

var jsonStr = `{
	"name": "Jane",
	"age": 24,
	"city": "ny"
}`

func main() {
	var doc map[string]interface{}
	err := json.Unmarshal([]byte(jsonStr), &doc)
	if err != nil {
		log.Fatalf("json.Unmarshal failed with '%s'\n", err)
	}
	fmt.Printf("doc: %#v\n", doc)
	name, ok := doc["name"].(string)
	if !ok {
		log.Fatalf("doc has no key 'name' or its value is not string\n")
	}
	fmt.Printf("name: %#v\n", name)
}
INFO