保留名称为Golang的结构字段

92dk7w1h  于 2023-04-03  发布在  Go
关注(0)|答案(2)|浏览(106)

嗨,我正在做一个API客户端,我想使用一个结构体来提取JSON,问题是其中一个JSON字段应该命名为type,据我所知,它是一个保留关键字,我如何创建一个结构体,其中有一个“type”字段?
示例:
我想做的是:

type Card struct {
  cardId  string
  name    string
  cardSet string
  type    string
}
5us2dqdw

5us2dqdw1#

这是不起作用的,因为你没有导出字段名。要在JSON输出中使用不同的字段名,你可以使用struct标签。例如,要在JSON输出中命名字段CardID,Name,CardSet和Type,你可以这样定义你的struct:

type Card struct {
    CardID  string `json:"cardId"`
    Name    string `json:"name"`
    CardSet string `json:"cardSet"`
    Type    string `json:"type"`
}

json:"<name>"标记指定要在JSON输出中使用的字段名称。

sc4hvdpw

sc4hvdpw2#

你必须在你的模型上使用json注解。此外,字段必须导出(大写),否则解组器将无法使用它们。

type Card struct {
  CardId  string `json:"cardId"`
  Name    string `json:"name"`
  CardSet string `json:"cardSet"`
  TheType    string  `json:"type"`
}

相关问题