我有一个与MySQL数据库通信的golang服务器。用户可以发布评论,这些注释可以包含表情符号,以及其他utf8mb4字符。我的数据库能够存储和检索这些表情符号,但是,当JSON封送/解压缩时,表情符号就会损坏。是否可以使用Go的本机编码/json包来解码/编码utf8mb4字符?如果是这样的话,我会怎样做呢?提前感谢!
发布于 2016-06-01 08:10:16
我终于找到了解决办法。以前,我将JSON封送为一个[]字节,然后在我的w.Write(jsonBytes)上调用http.ResponseWriter。通过将字节转换为字符串,编写适当的内容类型标头并使用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))https://stackoverflow.com/questions/37554472
复制相似问题