drtkyykai004574380 2019-09-20 02:49
浏览 13

遵循API指南如何在Golang中解码json以构造

This is my body/ how the api posts data:

{ 
"data": {
        "email": "string",
        "first_name": "string",
        "last_name": "string",
        }
}

and this is my postProfileRequest struct, which maybe i need to change to accomodate data?

type postProfileRequest struct {
    Profile Profile
}

where as this is Profile

type Profile struct {
ID        int    `json:"id"`
Email     string `json:"email"`
FirstName string `json:"first_name"`
LastName  string `json:"last_name"`
}

and i'd like to decode the body request without the data part, so the code below works, since i cant do r.Body.data, i was wondering what would be the best way to do this?

var req postProfileRequest
json.NewDecoder(r.Body).Decode(&req.Profile)
  • 写回答

1条回答 默认 最新

  • douying2243 2019-09-20 03:08
    关注

    Use the following to decode to a Profile without the data part:

    var req postProfileRequest
    
    // Create a value that matches the structure of 
    // the JSON. 
    v := struct{ Data *Profile }{&req.Profile}
    
    json.NewDecoder(r.Body).Decode(&v)
    
    fmt.Println(req.Profile) // The data field was decoded to req.Profile
    

    Run it on the playground.

    评论

报告相同问题?

悬赏问题

  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 关于大棚监测的pcb板设计
  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器
  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用