JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。当在JavaScript中处理JSON数据时,如果中文字符显示为乱码,通常是由于字符编码不一致导致的。
Content-Type
字段应设置正确,以告知浏览器数据的类型和编码。Content-Type
为application/json; charset=utf-8
,确保服务器返回的数据是UTF-8编码。app.get('/data', (req, res) => {
res.setHeader('Content-Type', 'application/json; charset=utf-8');
res.send(JSON.stringify({ message: '你好,世界!' }));
});
<head>
部分设置<meta charset="UTF-8">
,确保浏览器以UTF-8编码解析页面。<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JSON 示例</title>
</head>
<body>
<!-- 页面内容 -->
</body>
</html>
fetch('/data', {
method: 'GET',
headers: {
'Accept': 'application/json; charset=utf-8'
}
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
总之,解决JSON中文乱码问题的关键是确保整个数据处理流程中的编码一致,通常采用UTF-8编码可以避免大部分乱码问题。