You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Go语言如何导出HTTP请求体中带下划线的JSON结构体字段?

解决Go结构体解析下划线开头JSON键的报错问题

问题根源在于Go的访问控制规则:未导出的结构体字段(首字母小写或以下划线开头)无法被encoding/json包读取或写入,即便指定了JSON tag也无效。你的字段_my_property属于未导出字段,因此触发报错。

解决方法很直接:将结构体字段名改为首字母大写(导出字段),同时保留原JSON tag即可:

type TopologyGateway struct {
    _My_property string `json:"_my_property"`
}

如果想更贴合Go的命名规范,也可以写成驼峰形式,不影响JSON解析:

type TopologyGateway struct {
    MyProperty string `json:"_my_property"`
}

修改后encoding/json包就能正常识别JSON中的_my_property键,并将值映射到对应的导出字段中。

内容的提问来源于stack exchange,提问作者justAnotherNooB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 03:33:10