Подтвердить что ты не робот

В чем разница между next() и next ('route') в вызове expressjs app.VERB?

Документы читаются:

Методы app.VERB() предоставляют функции маршрутизации в Express, где VERB является одним из HTTP-глаголов, например app.post(). множественный обратные вызовы могут давать, все обрабатываются одинаково и ведут себя так же, как промежуточное программное обеспечение, за исключением того, что эти обратные вызовы могут ссылаться next ('route'), чтобы обойти оставшиеся обратные вызовы. Эта механизм может использоваться для выполнения предварительных условий на маршруте, а затем прохождения контролировать последующие маршруты, когда нет причин для продолжения маршрут согласован.

Что они подразумевают под "обходом оставшихся обратных вызовов?"? Я знаю, что next() передаст управление следующему соответствующему маршруту. Но... какая функция получит управление с помощью next('route')...?

4b9b3361

Ответ 1

Я ненавидел это, когда я отвечал на свой вопрос через 5 минут. next('route') используется при использовании маршрутного промежуточного программного обеспечения. Поэтому, если у вас есть:

app.get('/forum/:fid', middleware1, middleware2, function(){
  // ...
})

функция middleware1() имеет возможность вызвать next(), чтобы передать управление промежуточному программному обеспечению2 или next('route'), чтобы передать управление следующему согласованному маршруту в целом.