Я пытаюсь создать пользовательскую функцию промежуточного программного обеспечения для использования с Joi, которую я буду размещать на своих маршрутах, чтобы я могла передать схему Joi для проверки.
Я уже сделала промежуточное программное обеспечение для проверки JWT, но те не передали параметр с ними, и были в порядке.
Настройка маршрута и прохождение функции промежуточного ПО
app.route('/identity').post([validator(identitySchema)], this.identityController.createIdentity);
Функция промежуточного ПО валидатора
export const validator = (schema: object) => {
return async (req: Request, res: Response, next: NextFunction): Promise<void> => {
console.log('req: ' + req.body); //outputs req: [object Object]
console.log('schema: ' + schema); //outputs schema: [object Object]
//DO VALIDATION HERE
};
};
Если I только что сделал
app.route('/identity').post([validator], this.identityController.createIdentity);
export const validator(req: Request, res: Response, next: NextFunction) => {
Он бы взял запрос, разрешение и т. д. c ...