如何添加可在nodejs中使用express构建的不同路由使用的常用方法/函数?
我创建了一个当前正在提供3个API的nodejs服务器。例如:
/cars
/cars/:id
/cars/:id/sellers
所有这3个API都从另一个外部API检索数据。所以,我已经有一些在所有这些路线中都相似的代码。例如,将GET请求发送到外部API端点但具有不同的参数。
对于上面列表中的最后一个API,我想对其进行增强,以便它将采用可选参数(lastname,firstname)。我可以有另一个这样的API端点:
/cars/:id/sellers/:lastname&:firstname
但在这种情况下,我和列表中第3个API的逻辑几乎相同。
我想创建一些我可以从任何具有不同参数的API路由调用的util函数。我不太确定这样做或从哪里开始。
有什么建议吗?
答案 0 :(得分:0)
app.use((req, res, next) => {
//req.someParam
//your logic
next();
});
您可以使用这样的中间件,确保在路由定义后添加它,它将作为路由中的通用中间件
router.post('/cars', (req, res, next) => {
// if() some condition
req.someParam = "param";
next();
});