将Content-Type的响应标头设置为“ application / json; charset = utf-16”会将json转换为中文字符

时间:2019-08-13 07:19:06

标签: node.js express utf-16

当我尝试在服务中设置响应标头时,它将json转换为中文字符和其他一些垃圾字符。自2天以来,我一直在尝试调试此问题。我正在使用快递服务器。

1 个答案:

答案 0 :(得分:0)

我已经创建了一个简单的测试服务器,该服务器将基本的json响应发送给客户端,但看不到出现汉字的问题。我还测试了较大的json响应。

您可以尝试一下,看看是否获得相同的结果。

const express = require('express')
const app = express()
const port = 3000

app.get('/json', (req, res) => {
    res.set({ 'content-type': 'application/json; charset=utf-16' });
    res.write( JSON.stringify( { foo: 'bar' } ) )
    res.end();
})

app.listen(port, () => console.log(`Express listening on port ${port}!`))