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

Golang JSON编组将表情符号转换为问号

Golang JSON编组将表情符号转换为问号

Go
明月笑刀无情 2022-01-17 10:18:04
我有一个与 MySQL 数据库通信的 golang Web 服务器。用户可以发表评论,这些评论可以包含表情符号,以及其他 utf8mb4 字符。我的数据库能够存储和检索这些表情符号字符,但是,当 JSON 编组/解组时,表情符号会被破坏。是否可以使用 Go 的原生 encoding/json 包来解码/编码 utf8mb4 字符?如果是这样,我将如何去做。提前致谢!
查看完整描述

1 回答

?
慕婉清6462132

TA贡献1804条经验 获得超2个赞

我最终能够找到解决方法。以前我将 JSON 编组为 []byte,然后在我的 http.ResponseWriter 上调用 w.Write(jsonBytes)。通过将字节转换为字符串,编写适当的内容类型标头并使用 io.WriteString 代替,我能够防止损坏。这是我的代码:


returnJSON, error := json.Marshal(value)

if error != nil { Error(w, error); return }

w.Header().Set("Content-Type", "application/json; charset=utf-8")

io.WriteString(w, string(returnJSON))


查看完整回答
反对 回复 2022-01-17
  • 1 回答
  • 0 关注
  • 137 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号