NodeJs什么时候令牌是正确的next()方法?

我新手在使用JSON Web令牌validationNode.js API,我在scotch.io上阅读这个文档 ,但我无法理解何时令牌是正确的next()方法后发生

apiRoutes.use(function(req, res, next) { // check header or url parameters or post parameters for token var token = req.body.token || req.param('token') || req.headers['x-access-token']; // decode token if (token) { // verifies secret and checks exp jwt.verify(token, app.get('superSecret'), function(err, decoded) { if (err) { return res.json({ success: false, message: 'Failed to authenticate token.' }); } else { // if everything is good, save to request for use in other routes req.decoded = decoded; next(); } }); } else { ... } }); apiRoutes.get('/', function(req, res) { ... }); apiRoutes.get('/users', function(req, res) { ... }); apiRoutes.get('/check', function(req, res) { ... }); app.use('/api', apiRoutes); app.listen(port); 

用户必须通过其他请求(我的意思是在标记后是正确的)?

我想在这个示例代码/路由将检查令牌后调用,这是正确的,好吗? 我怎样才能select其他方法来调用,因为/正在调用next()

其实next()要求nodejs继续下一步它是在node.jsasynchronous循环中的任何东西。 JavaScript实际上是单线程的,所以接下来会调用堆栈中的任何方法。 如果你不打电话下一步()你的程序将卡住。 并且在您传递给.use此令牌中间件之后不会调用任何其他方法

在这个特定的情况下,它将在经过这个令牌中间件validation后调用下一个路由,这个中间件作为匿名函数传递。

也看看这个方法javascript node.js next()