📜  节点 js 返回 json - Javascript (1)

📅  最后修改于: 2023-12-03 14:57:09.628000             🧑  作者: Mango

Node.js 返回 JSON

在 Node.js 中,我们可以使用 JSON 模块来解析和序列化 JSON 数据。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于前后端通信。

解析 JSON

使用 JSON.parse() 方法来解析 JSON 字符串。示例:

const jsonString = '{ "name": "John", "age": 30 }';
const obj = JSON.parse(jsonString);
console.log(obj.name); // 输出 John

我们也可以将 JSON 数据从文件中读取后解析:

const fs = require('fs');

fs.readFile('data.json', 'utf8', (err, data) => {
  if (err) throw err;
  const obj = JSON.parse(data);
  console.log(obj.name); // 输出 John
});
序列化 JSON

使用 JSON.stringify() 方法将 JavaScript 对象序列化为 JSON 字符串。示例:

const obj = { name: 'John', age: 30 };
const jsonString = JSON.stringify(obj);
console.log(jsonString); // 输出 {"name":"John","age":30}

我们也可以将 JSON 数据写入文件中:

const fs = require('fs');

const obj = { name: 'John', age: 30 };
const jsonString = JSON.stringify(obj);

fs.writeFile('data.json', jsonString, err => {
  if (err) throw err;
  console.log('Data written to file');
});
返回 JSON

在 Node.js 中,我们可以通过服务器返回 JSON 数据给客户端。示例:

const http = require('http');

const server = http.createServer((req, res) => {
  const obj = { name: 'John', age: 30 };
  const jsonString = JSON.stringify(obj);

  res.writeHead(200, { 'Content-Type': 'application/json' });
  res.end(jsonString);
});

server.listen(3000, () => {
  console.log('Server running at http://localhost:3000');
});

上述的服务器会在 http://localhost:3000 运行。当客户端发送请求时,服务器会返回 JSON 字符串。

以上就是 Node.js 返回 JSON 的简介,通过对 JSON 方法和语法的了解,我们可以在后端进行更加灵活的数据操作。