这是连接路由的Express方式:
// routes
app.get('/grid', function ..
..
app.use('/grid', expressJwt({secret : secret}));
但是当我使用别名来连接路由时(表示> = 4)..
var gridRouter = express.Router()
, authRouter = express.Router();
// routes
grid.get('/', function ..
app.use('/grid', gridRouter)
app.use('/auth', authRouter)
... jwt不起作用。
答案 0 :(得分:0)
我自己找到了答案并希望分享。我们无法使用ExpressJWT保护单个路由器别名,但我们可以像过去一样保护路径。
var gridRouter = express.Router()
, authRouter = express.Router();
app.use('/grid/nestedGridPath', expressJwt({secret: secret}))
app.use('/auth/nestedAuthPath', expressJwt({secret: secret}))
app.use('/grid', gridRouter)
app.use('/auth', authRouter)
资料来源:https://www.npmjs.org/package/express-jwt
<强>更新强>
顺便说一下,如果你在使用快递Jwt时遇到问题,你仍然可以直接连接它,例如:
app.delete('/grid/delete/:id', expressJwt({secret:secret}), myFunc);