在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",
高洛峰2017-04-17 15:48:59
謝邀。
應該是編碼問題,node.js肯定用的是utf-8編碼,而emoji是unicode編碼。所以會有??出現。
建議你進行編碼,入庫。然後用的時候解碼就可以了。編碼方式用base64就可以。