0

我试图基于配置应用中间件,如下所示:

export class UsersModule implements NestModule{
  configure(consumer: MiddlewaresConsumer): void {
    const authRoutes = UsersController.getAuthRoutes();
    consumer
      .apply(AuthMiddleware)
      .forRoutes(...authRoutes);
  }
}

方法getAuthRoutes是静态的:

  public static getAuthRoutes(){
    return [
      { path: `/api/users`, method: RequestMethod.ALL},
    ];
  }

我的 AuthMiddleware 非常基本:

@Middleware()
export class AuthMiddleware implements NestMiddleware {
  constructor(
    @Inject(constants.logger) private logger: Winston,
  ){}

  resolve(...args: any[]): ExpressMiddleware {
    // return passport.authenticate('jwt', { session: false });
    return (req, res, next) => {
      this.logger.debug('AuthMiddleware');
      next();
    };
  }
}

它只是在控制台中记录行。我试图通过获取请求/api/users 访问,我正在获取用户列表,但控制台中没有 AuthMiddleware 消息。有什么建议吗?

4

1 回答 1

0

在这里查看我的问题。它只是对文档的误解。

于 2018-02-26T07:44:43.867 回答