当用户注册时,我将其名称保存在 mysql 中(数据库中的俄语名称类似于 - ÐрминÑÐ)。当我用 PHP 从数据库中获取数据并打印出来时,效果很好(显示俄语字母),但是当用户连接到 node.js 服务器(使用 socket.io)时,进行 mysql 查询(使用 node-mysql 模块)并接收数据从查询来看,他的名字似乎是 - ÐрминÑÐ。 如何获得可读的字母?
这是我的服务器文件中的一些行:
var mysql = require('mysql');
var db = mysql.createConnection({host:'x', user:'x', password:'x', database:'x', charset:'UTF8_GENERAL_CI'});
db.connect();
var http = require('http');
var server = http.createServer(function(req,res){
req.setEncoding("utf8");
}).listen(8080);
var io = require('socket.io').listen(server);
最佳答案
我认为这应该有所帮助:
function onRequest(request, response) {
...
request.setEncoding("utf8");
...
}
http.createServer(onRequest).listen(8888);
关于javascript - 如何使用 node.js 从 mysql 获取可读字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18807230/