在MySQL
的shell中可以添加emoji
表情,但是使用sequelize
就不行了。
表中带???
的就是使用sequelize
插入的数据,带emoji
的是在shell中手动插入的。
sequelize
配置:
var sequelize = new Sequelize(mysql_db, mysql_user, mysql_passwd,{
host: mysql_host,
dialect: 'mysql',
dialectOptions: {
charset: "utf8mb4",
collate: "utf8mb4_unicode_ci",
supportBigNumbers: true,
bigNumberStrings: true
},
pool: {
max: 5,
min: 0,
idle: 10000
}
});
相关模块版本:
"redis": "^2.6.2",
"sequelize": "^3.24.0",
谢邀。
应该是编码问题,node.js肯定用的是utf-8编码,而emoji是unicode编码。所以会有??出现。
建议你进行编码,入库。然后用的时候解码就可以了。编码方式用base64就可以。