我在解析以下结构时遇到问题,其中JsonData是存储在数据库中的
JSON字符串.
type User struct { Id uint64 `json:"user_id"` JsonData string `json:"data"` } user := &User { Id: 444,JsonData: `{"field_a": 73,"field_b": "a string"}`,}
如果我json.Marshal这个,它将逃避引号,但这将给我JSON:
{ "user_id" : 444,"data": "{\"field_a\": 73,\"field_b\": \"a string\"}" }
有没有办法让marshaller避免转义JsonData字符串并将其放在引号中,所以它看起来像这样?
{ "user_id" : 444,"data": {"field_a": 73,"field_b": "a string"} }
解决方法
好像
RawMessage正在寻找:
RawMessage is a raw encoded JSON object. It implements Marshaler and Unmarshaler and can be used to delay JSON decoding or precompute a JSON encoding.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。