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

go中的任意JSON数据结构

go中的任意JSON数据结构

Go
UYOU 2021-06-10 14:04:19
我正在构建一个 http api 并且我的每个处理程序都返回 JSON 数据,因此我构建了一个包装器函数来处理 JSON 编组和 http 响应(我已经包含了包装器中的相关部分以及示例处理程序之一以下)。传递任意嵌套结构的最佳方法是什么(结构还包含任意类型/数量的字段)。现在我已经确定了一个带有字符串键和 interface{} 值的映射。这有效,但这是最惯用的方法吗?result := make(map[string]interface{})customerList(httpRequest, &result)j, err := json.Marshal(result)if err != nil {    log.Println(err)    errs := `{"error": "json.Marshal failed"}`    w.Write([]byte(errs))    return}w.Write(j)func customerList(req *http.Request, result *map[string]interface{}) {    data, err := database.RecentFiftyCustomers()    if err != nil {        (*result)["error"] = stringifyErr(err, "customerList()")        return    }    (*result)["customers"] = data//data is a slice of arbitrarily nested structs}
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 189 浏览
慕课专栏
更多

添加回答

举报

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