2017-02-20 107 views
1

的我有一個MySQL行,上面寫着「測試」,並有一個豎起大拇指的表情符號的值:
enter image description hereNodeJS UTF8字符串顯示爲?而不是表情符

但是,當我從數據庫中檢索這個值,我得到的控制檯輸出:

enter image description here

我能做些什麼,使之內的表情符號的NodeJS工作?

    database.query({ 
         sql: "SELECT * FROM messages ORDER BY timestamp LIMIT 250" 
        }, function(error, results) { 
         if (error) { 
          errorLog("MySQL error: " + error.code); 
         } else { 
          var messages = []; 
          results.forEach(function(result) { 
           console.log("pushing with msg " + result.message); 
           messages.push({userID: String(result.sender), name: String(result.senderName), message: String(result.message)}); 
          }); 
         } 
        }); 

回答

2

找到一個解決方案後玩各種設置。當你連接到MySQL服務器時,你必須像這樣指定首選項charset: 'utf8mb4'

var database = mysql.createConnection({ 
    host: 'localhost', 
    user: 'account', 
    password: '1234', 
    database: 'database', 
    charset: 'utf8mb4' 
}); 
相關問題