• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

golang 数据库查询json字段数据的处理

武飞扬头像
懒是一种态度
帮助5

xorm应该是比较普及的数据库插件,处理查用字段没什么问题,但在查询json字段时候,返回了一串base64。如下:

dbEngine.Table("f_shop_goods").Select("*").Where("id=?", id).Get(&nodeArr)

其中json字段返回这样:

goods_img_other: "WyIvdXBsb2Fkcy8yMDIzLzAyMjgvMTQyMTU1LnBuZyJd"

很显然,是base64,开始想到很简单,再处理一下,来个转码,结果如下:

decodeBytes, err := base64.StdEncoding.DecodeString(utils.Strval(nodeArr["goods_img_other"]))

直接给我返回了个这:

goods_img_other: "[91 34 47 117 112 108 111 97 100 115 47 50 48 50 51 47 48 50 50 56 47 49 52 50 49 53 53 46 112 110 103 34 93]"

通过reflect.TypeOf 观察到,其实他的数据类型是 []uint8, 于是改用了下面写法,恢复正常数据:

nodeArr["goods_img_other"] = string(nodeArr["goods_img_other"].([]uint8))

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhfgkgfe
系列文章
更多 icon
同类精品
更多 icon
继续加载