Промежуточные программы, которые вы регистрируете, всегда выполняются в порядке их регистрации. Так что если у вас есть такой код:
app.use((req, res, next) => {
// middleware A
next()
})
app.use((req, res, next) => {
// middleware B
next()
})
app.use(middlewareC)
app.use('/gmail', gmail)
Тогда вы наверняка сможете создать один общий файл для этих промежуточных программ до app.use('/gmail', gmail)
:
common.js
let router = express.Router()
router.use((req, res, next) => {
// middleware A
next()
})
router.use((req, res, next) => {
// middleware B
next()
})
router.use(middlewareC)
module.exports = router
main.js
app.use(require('./common.js'))
app.use('/gmail', gmail)
API для использования (или любого другого из этих методов регистрации) равен ([path,] callback [, callback...])
Таким образом, вы можете зарегистрировать столько промежуточного программного обеспечения, сколько вам нужно для обратного вызова, чтобы вы могли добавить isLoggedIn
перед gmail
маршрутизатором:
app.use('/gmail', isLoggedIn, gmail)