Пропуск промежуточного программного обеспечения в экспрессе - PullRequest
0 голосов
/ 09 июня 2018

Я не ищу авторизацию для конкретного запроса, поэтому я сделал это. Если путь запроса совпадает, я хочу пропустить промежуточное программное обеспечение auth.verifyToken. Как я могу это сделать. Я пытался использовать return next(), но это не такработает.

 eventRouter.param('pin', (req, res, next, pin) => {
        let path = `/event/matchpin/${pin}`;
         if(req.path === path){
            //do something here so that directly executes the route
         }
         //else it executes the auth.verifyToken middleware
        next();
      });
    app.use('/user',auth.verifyToken,eventRouter);

1 Ответ

0 голосов
/ 09 июня 2018

next () используется для пропуска промежуточного программного обеспечения, вы просто используете его не в том месте.

Попробуйте этот код:

 eventRouter.param('pin', (req, res, next, pin) => {
        let path = `/event/matchpin/${pin}`;
         if(req.path === path){
            // Next will by pass this middleware
            next();
         }
         //else it executes the auth.verifyToken middleware

      });
    app.use('/user',auth.verifyToken,eventRouter);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...