表达不同的路径但相同的逻辑
Express different paths but same logic
我有这样的路线
router.post('/policy', async (req, res, next) => {
try {
console.log(req.body);
} catch (e) {
console.log(e)
res.sendStatus(500)
}
})
我希望在调用 /role
时执行相同的逻辑,正确的方法是什么? (最好不要复制粘贴相同的代码)
我能想到这个逻辑
router.post('/policy', async (req, res, next) => {
try {
console.log(req.body);
} catch (e) {
console.log(e)
res.sendStatus(500)
}
})
router.post('/role', async (req, res, next) => {
try {
console.log(req.body);
} catch (e) {
console.log(e)
res.sendStatus(500)
}
})
为什么我为相同的逻辑命名不同的路由?
因为我希望后端更具可读性和特定于它正在执行的任务,即添加策略或角色
这将适用于路线 /policy
和 /role
:
router.post(['/policy', '/role'], async (req, res, next) => {
try {
console.log(req.body);
} catch (e) {
console.log(e)
res.sendStatus(500)
}
})
我有这样的路线
router.post('/policy', async (req, res, next) => {
try {
console.log(req.body);
} catch (e) {
console.log(e)
res.sendStatus(500)
}
})
我希望在调用 /role
时执行相同的逻辑,正确的方法是什么? (最好不要复制粘贴相同的代码)
我能想到这个逻辑
router.post('/policy', async (req, res, next) => {
try {
console.log(req.body);
} catch (e) {
console.log(e)
res.sendStatus(500)
}
})
router.post('/role', async (req, res, next) => {
try {
console.log(req.body);
} catch (e) {
console.log(e)
res.sendStatus(500)
}
})
为什么我为相同的逻辑命名不同的路由?
因为我希望后端更具可读性和特定于它正在执行的任务,即添加策略或角色
这将适用于路线 /policy
和 /role
:
router.post(['/policy', '/role'], async (req, res, next) => {
try {
console.log(req.body);
} catch (e) {
console.log(e)
res.sendStatus(500)
}
})