Мы используем NestJS для нашего приложения NodeJS.
В нашем приложении есть несколько промежуточных программ / охранников / перехватчиков для создания контекста запроса пользователя, проверки токена jwt, запроса / ответа на перехват и т. Д.
Мы также реализовали несколько пользовательских декораторов, чтобы установить метаданные для наших конечных точек.
Эти данные очень легко использовать в элементах защиты / перехватчиков, потому что у вас есть ExecutionContext в функциях canActivate / intercept.
Но нам очень не хватает этой функциональности в промежуточном программном обеспечении.
Есть ли шанс получить / внедрить ExecutionContext в промежуточном программном обеспечении NestJS?
, например
export class SomeMiddleware implements NestMiddleware {
constructor(@Inject('ExecutionContext') context: ExecutionContext) {}
use(req, res, next) {
// get data from context / decorator
Reflect.getMetadata(SOME_KEY, context.getHandler());
next();
}
}