我无法弄清楚我的代码解码这个json有什么问题。它返回一个空结构。在这里去游乐场:http://play.golang.org/p/K8WznLT5M0
package main
import (
"encoding/json"
"fmt"
)
type ApiParams struct {
AccessToken string `json:access_token`
TokenType string `json:token_type`
ExpiresIn int64 `json:expires_in`
}
func main() {
data := `{
"access_token": "asdfasdf",
"token_type": "bearer",
"expires_in": 5173885
}`
var apiParams ApiParams
err := json.Unmarshal([]byte(data), &apiParams)
if err != nil {
fmt.Println(err)
}
fmt.Println(apiParams)
}
答案 0 :(得分:2)
为标签添加双引号:
type ApiParams struct {
AccessToken string `json:"access_token"`
TokenType string `json:"token_type"`
ExpiresIn int64 `json:"expires_in"`
}
答案 1 :(得分:2)
您的注释错误..您需要围绕json属性名称的引号,如;
type ApiParams struct {
AccessToken string `json:"access_token"`
TokenType string `json:"token_type"`
ExpiresIn int64 `json:"expires_in"`
}