【发布时间】:2018-02-23 23:03:08
【问题描述】:
//string with correct json format
{"reaction":"\ud83d\udc4d","user":{"id":"xyz"}}
//after JSON.parse()
{ reaction: '????', user: [Object] }
我想做的是保持对反应值的编码,但JSON.parse() 并没有完全按照我的意愿行事。
更新
最后我决定不理会JSON.parse() 并按照@Brad 的建议修复数据库问题。我更改了数据库格式,但这还不足以解决问题,所以我找到了this。现在,每个语句都必须以 SET NAMES utf8mb4; 开头,然后是查询。同样在连接中,您必须拥有这些{charset : 'utf8mb4', multipleStatements: true}。如果没有正确的 node-mysql 文档,很难找到最佳答案,但最终我学到了很多东西,谢谢。
【问题讨论】:
-
适合我吗?在 Chrome 63 上运行
-
啊,你就是这个意思。
-
JSON.parse不会对任何内容进行编码,在我看来,它就像是控制台或您以任何方式记录数据。解析数据的预期用途是什么? -
@Adminy 你用什么来查看你的数据库,为什么不希望它显示为一堆问号?最好按原样存储实际字符,即使您正在查看数据库的工具不知道如何显示它们。
-
@Adminy 修复你的字符编码。你以完全错误的方式解决这个问题。不理会 JSON。
标签: javascript json node.js