Привет, у меня есть два запроса в моем приложении.
но только один отправить результат, как я могу сделать, чтобы они оба работали?
первый - это все мои здания, второй - тот же самый, но я сортирую весь документ по 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'
});
}
});
Наконец то, что я сделал, разделил два запроса на два адреса, как это, и мне лучше обрабатывать и манипулировать на моем внешнем интерфейсе
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'
});
}
});