在 Golang 中解析 JSON 不会填充对象

作为 Oauth 应用程序的一部分,我需要解码一些 JSON。但我无法填充对象。没有失败,但数据不存在。我尝试了很多不同的方法...


我在http://play.golang.org/p/QGkcl61cmv重新创建了这个问题


import (

    "encoding/json"

    "fmt"

    "strings"

   )


type RefreshTokenData struct {

    id            string `json:"id"`

    issued_at     string `json:"issued_at"`

    scope         string `json:"scope"`

    instance_url  string `json:"instance_url"`

    token_type    string `json:"token_type"`

    refresh_token string `json:"refresh_token"`

    signature     string `json:"signature"`

    access_token  string `json:"access_token"`

}


func main() {

    var tokenResp = `

    {"id":"https://google.com","issued_at":"1423698767063",

    "scope":"full refresh_token",

    "instance_url":"https://na15.salesforce.com",

    "token_type":"Bearer",

    "refresh_token":"2os53__CCU5JX_yZXE",

    "id_token":"5jSH0Oqm7Q4fc0xkE9NOvW8cA13U",

    "signature":"/599EkGVIBsKPFRNkg+58wZ3Q7AFyclvIGvCrxVeyTo=",

    "access_token":"sadfasdfasdfasdfdsa"}`


    var tokenData RefreshTokenData

    decoder := json.NewDecoder(strings.NewReader(tokenResp))

    if jsonerr := decoder.Decode(&tokenData); jsonerr != nil {

        fmt.Println("****Failed to decode json")

    } else {

        fmt.Println("****Refresh token: " + tokenData.refresh_token)

    }

}



FFIVE
浏览 155回答 1
1回答

HUX布斯

该JSON编码包可与出口领域而已。将字段名称大写以导出它们:type RefreshTokenData struct {  Id            string `json:"id"`  Issued_at     string `json:"issued_at"`  Scope         string `json:"scope"`  Instance_url  string `json:"instance_url"`  Token_type    string `json:"token_type"`  Refresh_token string `json:"refresh_token"`  Signature     string `json:"signature"`  Access_token  string `json:"access_token"`}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go