Express-jwt ライブラリを取り込もうとしていますが、エラー処理のしくみがよくわかりません。
ドキュメントには次のように記載されています。
エラー処理
デフォルトの動作では、トークンが無効な場合にエラーがスローされるため、カスタム ロジックを追加して、次のように不正アクセスを管理できます。
app.use(function (err, req, res, next) {
if (err.name === 'UnauthorizedError') {
res.status(401).send('invalid token...');
}
});
しかし、私はそれがどのように機能するか混乱しています。単純な状況で、トークンが有効な場合は呼び出し、そうでない場合はエラーでreq
res
呼び出したい場合、その関数をどこに配置すればよいですか?next
next
app.use
たとえば、ここに私のコードがあります:
router.post('/', expressJwt({
secret: jwtSecret,
credentialsRequired: false
}), (req, res, next) => {
databaseController.findUser(req.user.email, (err, user) => {
if (err) {
return next(err)
}
res.json(user)
})
})
hereはerr
、express-jwt 検証からではなく、DB 呼び出しから取得されます。どんな助けでも大歓迎です。