嗨,我的应用程序中有两个请求
但是只有一个发送结果,我如何才能使它们都工作?
第一个是我所有建筑的一个集合,第二个是相同的集合,但我按campusname对整个文档进行排序。
我确实喜欢这样,但仍然没有工作,只发送了一个请求。
app.get('/buildings', async (req, res) => {
try {
await db.db('').collection('buildings').find({}).toArray(function (err, result) {
res.send(result);
});
await db.db('').collection('buildings').aggregate([
{$group : {_id: "$campusName", buildings : {$push : {buildingName : "$buildingName", phoneNumber :"$phoneNumber" }}}}
]).toArray(function (err, building) {
res.send(building);
});
} catch(err) {
return res.json({
success: false,
message: 'error'
});
}
});
这是我的新问题
app.get('/buildings', async (req, res) => {
try {
await db.db('').collection('buildings').find({}).toArray(async (err, result) => {
await db.db('').collection('buildings').aggregate([
{$group : {_id: "$campusName", buildings : {$push : {buildingName : "$buildingName", phoneNumber :"$phoneNumber" }}}}
]).toArray((err, building) => {
res.send(result);
res.send(building);
});
});
} catch(err) {
return res.json({
success: false,
message: 'error'
});
}
});
最后,我所做的是将这两个查询分为两个这样的地址,并且i s=t对于我在前端处理和操作更好
app.get('/buildings', async (req, res) => {
try{
await db.db('').collection('buildings').find({}).toArray(function (err, result) {
res.send(result);
});
} catch(err) {
return res.json({
success: false,
message: 'error'
});
}
});
app.get('/buildings/percampus', async (req, res) => {
try {
await db.db('').collection('buildings').aggregate([
{$group : {_id: "$campusName", buildings : {$push : {buildingName : "$buildingName", phoneNumber :"$phoneNumber" }}}}
]).toArray(function (err, building) {
res.send(building);
});
} catch(err) {
return res.json({
success: false,
message: 'error'
});
}
});