json package - encoding/json - Go Packages
RFC7159에 정의된 JSON을 encode, decode 한다.
JSON 값과 GO에서 정의한 값의 매핑은 Marshal, Unmarshal 함수로 가능하다.
JSON and Go - The Go Programming Language
데이터 교환 형식. JS의 객체, 리스트를 닮음.
웹 어플리케이션에서 자주 사용된다.
GO에서 정의한 값을 JSON으로 바꾸려면 아래 함수를 사용한다
func Marshal(v interface{}) ([]byte, error)
예시
type Message struct {
Name string
Body string
Time int64
}
m := Message{"Alice", "Hello", 1294706395881547000}
b, err := json.Marshal(m)
string(b) // 문자열, 사람이 읽을 수 있는 JSON의 형태임
위 코드에서 err가 nil이라면, b의 값은 다음과 같다