NodeJS:utf8_general_ci(MySQL)出现语言错误

时间:2018-10-31 02:31:22

标签: mysql arrays node.js json

我有一个带有聊天系统的网站。此聊天系统具有一个表“ messages”,其中一列是“ messagetext”,设置为utf8_general_ci(MySQL)。在我的网站上,我使用php查询数据库。结果还可以。

在我的应用程序中,我将NodeJS用作后端,但结果是这样的:“ ÎσδÎÏσΔ。此列中存储有希腊语。

我尝试过iconv-lite,iconv,utf8,解码Json。

我的想法是,在网站上它从列和解码到utf8都获得了“α-β-β”的值,这就是我如何看到正确的结果的原因。但是在应用程序中不会发生这种情况,结果是值而不是实际的单词。

我该怎么办?

1 个答案:

答案 0 :(得分:0)

我在这里闻到了mysql配置问题。尝试使用utf8mb4_unicode_ci代替utf8_general_ciHere您可以找到有关原因的更多信息。

这是my.cnf,当我需要扩展拉丁字符时,可能会有用。

[client]
default-character-set = utf8mb4

[mysql]
default-character-set = utf8mb4

[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci