#node.js #mongoose
#node.js #мангуст
Вопрос:
Как написать api для приведенных ниже маршрутов запросов? с помощью mongoose, node.js и express.js
/поиск?король= Робб Старк
- возвращает список сражений, в которых «attacker_king» или «defender_king» был «Робб Старк»
Также должно работать для нескольких запросов
/ поиск?король = Робб Старк amp; местоположение = Риверран amp; тип= осада
модель базы данных выглядит следующим образом:
_id:5fd8df1c1333e53e88d41f31
название: «Битва за Щитовые острова»
год выпуска: «300»
номер битвы: «32»
attacker_king: «Балон / Эурон Грейджой»
defender_king:»Joffrey/Tommen Baratheon»
battle_type: «решающая битва»
местоположение: «Острова щита»
Ответ №1:
Если я правильно понял ваш вопрос, вы можете достичь этого с помощью чего-то, называемого запросом req в node js API
app.get('/search', async function (req, res) {
try{
const query = {}
if(req.query amp;amp; req.query.king){
query.king= req.query.king
}
if(req.query amp;amp; req.query.location){
query.location= req.query.location
}
if(req.query amp;amp; req.query.type){
query.battle_type= req.query.type
}
const result = await Battles.find(query)
res.send({
result:result
})
}
catch(e=>{
// error condition
res.send({})
} )
})
Дайте мне знать, если это поможет 🙂
Комментарии:
1. На самом деле я должен проверить имя короля из двух полей, которые являются attacker_king или defender_king. И я думаю, что передача массива для поиска не сработает. Я тоже пытался просто нажать на это link: codeshare.io/axKWbB а это мое электронное письмо Id:samruddhashah@gmail.com пожалуйста, свяжитесь со мной