express - 为什么我的 json 数据在浏览器中的格式不正确?
问题描述
我正在学习 Express,我刚刚构建了一个对数据库进行 CRUD 操作的 JSON API
它正在工作,但我想知道为什么我的 JSON 数据在浏览器上是这样格式化的
[{"_id":"5f253d105f194d4c8074227d","firstName":"John","lastName":"Doe","age":38,"__v":0},{"_id":"5f253d3a5f194d4c8074227e","firstName":"Jane","lastName":"Doe","age":33,"__v":0}]
我希望它被格式化为
[
{
"_id":"5f253d105f194d4c8074227d",
"firstName":"John",
"lastName":"Doe",
"age":38,
"__v":0},
{
"_id":"5f253d3a5f194d4c8074227e",
"firstName":"Jane",
"lastName":"Doe",
"age":33,
"__v":0}
]
这是我用来获取用户的功能
router.get("/", async (req, res) => {
try {
const getUsers = await Users.find();
res.json(getUsers);
} catch (err) {
res.json({ message: err.message });
}
});
解决方案
您的浏览器只需要一个 JSON 格式化程序,您可以使用JSON Formatter for Chrome 或JSONView Firefox 之类的格式化程序。或者您可以使用任何 API 客户端(如Insomnia、Postman、Postwoman ...)测试您的 API 响应,而不是在浏览器上测试它
编辑:
如果您希望(出于任何原因)发送预先格式化/人类可读的 JSON 响应,您可以使用JSON.stringify来实现,例如:
app.get("/formatted", (req, res) => {
const formattedResponse = JSON.stringify(data, null, 2)
res.type('json').send(formattedResponse)
});
推荐阅读
- java - 无法执行目标 org.codehaus.mojo:exec-maven-plugin:1.2.1:exec 错误与 neo4j
- c# - 从一维数组查看 Reportviewer 中的数据表
- vba - 在 VBA 中引用多个“模板”工作表
- php - 创建一个从 mysqli 查询的结果分成两部分的数组
- c - 如何在 C 中创建指针数组?
- node.js - 我的数据库未在 Sequelize 中更新
- python - Tensorflow Estimator API 输入张量名称
- r - 总结每行数据帧中记录的比例
- mysql - 为什么 information_schema 中的 data_length 不能反映实时数据长度?
- amazon-web-services - .Net RabbitMQ 客户端是否在 .Net Core 2.0 中工作。AWS Lambda 函数?