ubuntu12.04 Nodejs express 中文乱码的问题
大家好。 我初学node.js, ubuntu12.04 64bit + node 0.10.30 + express 4.2.0 按照教材上的例子写的代码,返回来的json里面中文总是乱码。 写的js文件全部都是utf-8格式的。 请高手指导一下,是什么原因?是不是环境的问题? 非常感谢。
router.get('/', function(req, res) {
//res.render('index', { title: 'Express' });
if(!req.query.user){
return res.json({code: 0, msg: '信息不完整'});
}
if (req.query.type && (["male", "female"].indexOf(req.query.type) === -1)) {
return res.json({code: 0, msg: '类型错误'});
}
redis.pickBottle(req.query, function(result){
res.json(result);
})
});
3 回复
你的浏览器记得用 chrome。
如果用了的话,看看浏览器是不是识别错了编码,纠正成 UTF-8。
如果要稳妥地解决问题。
使用这句 res.header("Content-Type", "application/json; charset=utf-8");
全局用法:
写个全局中间件,插入这句话:res.header("Content-Type", "application/json; charset=utf-8");
@alsotang 非常感谢你的帮助。解决了我的问题。
@duiduilove 学习 Node.js 看这里:https://github.com/alsotang/node-lessons