node乱码解决方法

拭目以待 发布于

使用node.js做为后台开中,发现前端界面展示都为正常。但是从Network中查看请求信息时,发现返回数据内的中文为乱码。


出现这种情况时,只需在node中配置如下代码即可:

res.setHeader('Content-Type','text/html;charset=UTF-8');


但是需要注意,代码执行的位置需要在如下代码之前:

res.write(JSON.stringify(data));	
res.end();


贴一个我使用的实例,我这块是将ajax请求与同步请求进行分类处理的。各位只需要关注ajax请求。

//ajax请求过滤器
if(urlArray.length === 3 && 
    typeof(router[_controller]) == 'object' && 
    typeof(router[_controller][_action]) == 'function'){
    res.setHeader('Content-Type','text/html;charset=UTF-8');   //设置字符编码
    router[_controller][_action](req, res);
    return;
}
/*
    同步请求
*/
。。。

配置后,重启node服务,编码问题即可解决。