我是Node.js和Express的新手,我想知道以下代码是否正确:
router.get('students/:name', async (req, res) => {
const students = await Student.find(req.params.name);
res.send(students);
});
router.get('students/:age', async (req, res) => {
const students = await Student.find(req.params.age);
res.send(students);
});
那么,Express如何找出只使用一个参数的哪条路线呢?例如,当我呼叫
localhost:3000/students/20
时,如果有些学生20岁,而某些学生的名字是“ 20”,该怎么办? 最佳答案
您应该在这种情况下使用req.query。像:/students?name=john&age=25
router.get('/students', async (req, res) => {
let query = req.query; // {name: 'john',age:25}
const students = await Student.find(query);
res.send(students);
});
关于node.js - 快速路线参数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57595733/