提问者:小点点

如何用Node.js为猫鼬编写多用途API?


如何为下面的查询路由编写api?在mongoose,node.js和express.js的帮助下

Robb Stark

  • 返回“攻击者_king”或“防御者_king”为“Robb Stark”的战斗列表

也应该适用于多个查询

/search?king=Robb Stark&location=Riverrun&type=围攻

数据库模型是这样的:

_ID:5FD8DF1C1333E53E88D41F31

名称:《盾群岛之战》

年份:“300”

Battle_Number:“32”

Attacker_King:“Balon/Euron Greyjoy”

Defender_King:“乔佛里/托门·拜拉席恩”

battle_type:“投入战斗”

地点:“神盾群岛”


共1个答案

匿名用户

如果我正确理解了您的问题,那么您可以通过node js API中的req query来实现

app.get('/search', async function (req, res) {
    try{
        const query = {}
        if(req.query && req.query.king){
            query.king= req.query.king
        }
        if(req.query && req.query.location){
            query.location= req.query.location
        }

        if(req.query && 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({})
    } )

})

如果有帮助,请告诉我:)