【发布时间】:2021-10-20 13:36:11
【问题描述】:
我有两个函数来验证请求正文,validation1 和 validation2。
现在我的任务是,在解析传入的请求正文后,
如果用户角色是premium user,我需要使用validation1 验证数据,否则我将使用validation2 验证数据。
我尝试如下解决它,但无济于事。由于某种原因,验证中间件没有被调用。
const express = require('express');
const router = express.Router();
const { userController } = require('./controllers');
router.route('/check').post(
(req, res, next) => {
if (req.role === 'premium user') {
validation1(someInformation);
} else {
validation2(someInformation);
}
next();
},
userController.check
);
const validation1 = (someInformation) => (req, res, next) => {
// codes
return next();
}
const validation2 = (someInformation) => (req, res, next) => {
// codes
return next();
}
任何帮助将不胜感激。提前致谢。
【问题讨论】:
-
尝试删除
router.route('/check').post(中的next()
标签: node.js express express-router