Application-levelとRouter-levelのmiddleware
3引数関数
req
res
next()
docsのこの処理とか、目で追うのめっちゃ難しそうmrsekut.icon code:ts
app.get('/user/:id', function (req, res, next) {
// ⓪
if (Number(req.params.id) === 0) next('route')
else next()
}, function (req, res, next) {
// ①
res.render('regular')
})
// ②
app.get('/user/:id', function (req, res, next) {
res.render('special')
})
パターンは2種類あって、
:idが0の場合は、⓪→②と処理される
それ以外の場合は、⓪→①と処理される
めっちゃ読みづらいし、②の実装漏れに、静的に気付けない
こんなわけわからん書き方はしないに越したことはないmrsekut.icon