为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

Go
FFIVE 2021-09-13 16:23:43
作为 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)    }}
查看完整描述

1 回答

?
HUX布斯

TA贡献1876条经验 获得超6个赞

该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"`

}


查看完整回答
反对 回复 2021-09-13
  • 1 回答
  • 0 关注
  • 154 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信