在 Go 语言中使用 json

由于要开发一个小型的web应用,而web应用大部分都会使用json作为数据传输的格式,所以有了这篇文章。

包引用

import (
    "encoding/json"
    "github.com/bitly/go-simplejson" // for json get
)

用于存放数据的结构体

type MyData struct {
    Name   string    `json:"item"`
    Other  float32   `json:"amount"`
}

这里需要注意的就是后面单引号中的内容。

`json:"item"`

这个的作用,就是Name字段在从结构体实例编码到JSON数据格式的时候,使用item作为名字。算是一种重命名的方式吧。

编码JSON

var detail MyData

detail.Name  = "1"
detail.Other = "2"

body, err := json.Marshal(detail)
if err != nil {
    panic(err.Error())
}

我们使用Golang自带的encoding/json包对结构体进行编码到JSON数据。

json.Marshal(...)

JSON解码
由于Golang自带的json包处理解码的过程较为复杂,所以这里使用一个第三方的包simplejson进行json数据的解码操作。

js, err := simplejson.NewJson(body)
if err != nil {
    panic(err.Error())
}

fmt.Println(js)

完!

声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。

在 Go 语言中使用 json