gpt4 book ai didi

javascript - 如何使用 NodeJs 获取 json 对象中的响应

转载 作者:太空宇宙 更新时间:2023-11-04 03:01:58 26 4
gpt4 key购买 nike

我使用 NodeJs 和 MongoDb 作为后端服务。我的集合中有几个文档,其中包含名为 _id 和 Name 的字段。

我想获取 Json 对象中的输出,如下所示:

[ 
{
Name:"Paul"
},
{
Name:"Jon"
}
]

这是我的代码:

var express = require('express');    
var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/";
var bodyParser = require('body-parser');

var app = express();

app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended:true}));

app.post('/offers',(req, res) => {

MongoClient.connect(url, (err, db) => {
if(err) throw err;
var dbo = db.db('Tiffino_db');

dbo.collection("Offers")
.find({},{ projection: { _id: 0 } })
.toArray((err, result) => {
if (err) {
console.log("Error:", +err);
}
else {
output = result.map(r => r.Name);
res.json({"Name":output});
db.close();
}
});
});
});

这是我的输出:

{
"Name": [
"Paul",
"Jon",
"David",
"Aina"
]
}

请让我知道如何修改代码以获得所需的输出。

谢谢

最佳答案

而不是:

output = result.map(r => r.Name); res.json({"名称":输出});

尝试:

output = result.map( r => ({ "Name": r.Name })); res.json(输出);

如前所述,您将所有结果记录映射到一个数组中,然后将该数组分配给属性名称。相反,您希望每次都使用属性名称创建一个新对象并返回该数组。

关于javascript - 如何使用 NodeJs 获取 json 对象中的响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52836723/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com