如何使用node.js restful API查看json中的cyrillic数据



我有一个json格式的cyrillic数据,在API中我看到的数据如下:

stations    
0   
Map_code    0
NAME_IME    "Bjala river - Smoljan"
NAME_CYR    "���� ���� - ��. ������"
Alertlevelwebsite   1
CODENUM 1

我想用UTF-8或CP_1251编码显示NAME_CYR "���� ���� - ��. ������",但我不知道如何。。?

代码:

app.route('/stations')
.get(function (req, res) {
// omitted
res.setHeader('Access-Control-Allow-Origin', '*', 'Cache-Control', 'private, no-cache, no-store, must-revalidate');
pool.query(`SELECT * FROM sel_alert_level s;`, function (error, result) {
if (error)
return res.status(500).json({ error: "Грешна заявка. Опитай отново !"})
stations = result;
res.json({ stations })
});
});

我试着把res.set({ 'content-type': 'application/json; charset=utf-8' });放在res.setHeader('Access-Control-Allow-Origin', '*', 'Cache-Control', 'private, no-cache, no-store, must-revalidate');之前,如下所示:

app.route('/stations')
.get(function (req, res) {
// omitted
res.set({ 'content-type': 'application/json; charset=utf-8' });
res.setHeader('Access-Control-Allow-Origin', '*', 'Cache-Control', 'private, no-cache, no-store, must-revalidate');
pool.query(`SELECT * FROM sel_alert_level s;`, function (error, result) {
if (error)
return res.status(500).json({ error: "Грешна заявка. Опитай отново !"})
stations = result;
res.json({ stations })
});
});

但这对我不起作用。

您需要检查响应中的标头(如果使用浏览器,请使用开发工具(。JSON默认情况下是UTF-8,如果您使用express,它应该很好,但只需仔细检查。

如果不起作用,请使用res.set({ 'content-type': 'application/json; charset=utf-8' });(再次使用Express(。

最新更新