You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让JSON.parse()保留reaction值编码?数据库编码问题如何解决?

踩坑记录:解决JSON.parse()与MySQL编码兼容问题

一开始我死磕着要让reaction值保持编码状态,结果发现JSON.parse()的表现完全不是我想要的样子。后来听了@Brad的建议,我放弃硬改JSON.parse()的想法,转而从数据库端找问题。

我先调整了数据库的格式,但发现这根本没彻底解决问题。折腾好一阵才摸出正确的解决方案:

  • 所有SQL查询语句必须先执行SET NAMES utf8mb4;,再跑实际的查询逻辑
  • 用node-mysql连接数据库时,必须配置这两个参数:{charset : 'utf8mb4', multipleStatements: true}

要是没给node-mysql做这些配置,那些带emoji或者特殊字符的reaction字段肯定会出现编码乱码,最后导致JSON.parse()直接炸锅。

内容的提问来源于stack exchange,提问作者Got To Figure

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 09:30:11