Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 语法错误:关于使用next in中间件传递给其他中间件的非法中断语句_Javascript_Node.js_Express_Jwt_Express Router - Fatal编程技术网

Javascript 语法错误:关于使用next in中间件传递给其他中间件的非法中断语句

Javascript 语法错误:关于使用next in中间件传递给其他中间件的非法中断语句,javascript,node.js,express,jwt,express-router,Javascript,Node.js,Express,Jwt,Express Router,我正在尝试使用中间件验证我的用户令牌。当我试图使用next()转到下一个中间位置时,问题就出现了。我认为我的next()无法正常工作。请帮忙 中间件代码: async function verify(req,res,next){ if(req.body.token==null) next("Tokken Not present") // verify token try{ var isAuth=jwt.verify(req.body.token,pro

我正在尝试使用
中间件
验证我的用户令牌。当我试图使用
next()
转到下一个中间位置时,问题就出现了。我认为我的
next()
无法正常工作。请帮忙

中间件代码:

async function verify(req,res,next){

    if(req.body.token==null) next("Tokken Not present")
    // verify token
    try{

        var isAuth=jwt.verify(req.body.token,process.env.secretKey);
       if(isAuth)next();
    }catch(err){
        next(err)
    }

}
错误消息:

> db connected 
>err handler reached 
>SyntaxError: Illegal break statement
>     at Layer.handle [as handle_request] (F:\recuritmentPortal\backend\node_modules\express\lib\router\layer.js:95:5)
>     at next (F:\recuritmentPortal\backend\node_modules\express\lib\router\route.js:138:13)
>     at verify (F:\recuritmentPortal\backend\middlewares\userVer.js:12:8)
>     at Layer.handle [as handle_request] (F:\recuritmentPortal\backend\node_modules\express\lib\router\layer.js:95:5)
>     at next (F:\recuritmentPortal\backend\node_modules\express\lib\router\route.js:138:13)
>     at Route.dispatch (F:\recuritmentPortal\backend\node_modules\express\lib\router\route.js:112:3)
>     at Layer.handle [as handle_request] (F:\recuritmentPortal\backend\node_modules\express\lib\router\layer.js:95:5)
>     at F:\recuritmentPortal\backend\node_modules\express\lib\router\index.js:281:22
>     at Function.process_params (F:\recuritmentPortal\backend\node_modules\express\lib\router\index.js:335:12)
>     at next (F:\recuritmentPortal\backend\node_modules\express\lib\router\index.js:275:10)
>     at Function.handle (F:\recuritmentPortal\backend\node_modules\express\lib\router\index.js:174:3)
>     at router (F:\recuritmentPortal\backend\node_modules\express\lib\router\index.js:47:12)
>     at Layer.handle [as handle_request] (F:\recuritmentPortal\backend\node_modules\express\lib\router\layer.js:95:5)


请发布文本,而不是文本的图像。(您是否尝试将数据传递到下一个中间件?)不,我只想在令牌成功验证后将我的req移动到下一个中间件。基本上,上面的函数用于验证。由于我必须验证多次,所以我将其作为sep middleware发布文本,而不是文本的图像。(您是否正在尝试将数据传递到下一个中间件?)不,我只想在令牌成功验证后将我的req移动到下一个中间件。基本上,上述功能用于验证。由于我必须验证多次,我已将其作为sep middlewareAllan进行验证。感谢您的回答,但我正在使用express router,即使使用路由器。使用它仍然不起作用。欢迎使用stackoverflow!您能提供任何limi吗回答中的假设、假设或简化。请在此链接查看有关如何回答的更多详细信息:Allan感谢您的回答,但我使用的是express router,即使是do router。使用它仍然不起作用。欢迎使用stackoverflow!您能否在回答中提供任何限制、假设或简化。请查看有关如何回答问题的更多详细信息t此链接:
    async function verify(req,res,next){

    if(req.body.token==null) 
        return next("Tokken Not present")
    // verify token
    try{

        var isAuth=jwt.verify(req.body.token,process.env.secretKey);
       if(isAuth)next();
    }catch(err){
        next(err)
    }

}

    app.use((error, request, response, next) => {
    response.status(500).send('error') 
})