Node.js 异常行为jsonwebtoken已过期错误

Node.js 异常行为jsonwebtoken已过期错误,node.js,jwt,Node.js,Jwt,我有一个Node.js应用程序,它使用jsonwebtoken进行会话管理 但是,在令牌过期后,当我想再次访问时,我得到: { TokenExpiredError: jwt expired at Object.module.exports [as verify] (/home/ubuntu/me-n-you/node_modules/jsonwebtoken/verify.js:126:19) at auth (/home/ubuntu/me-n-you/app_server/r

我有一个Node.js应用程序,它使用jsonwebtoken进行会话管理

但是,在令牌过期后,当我想再次访问时,我得到:

{ TokenExpiredError: jwt expired
    at Object.module.exports [as verify] (/home/ubuntu/me-n-you/node_modules/jsonwebtoken/verify.js:126:19)
    at auth (/home/ubuntu/me-n-you/app_server/routes/index.js:14:9)
    at Layer.handle [as handle_request] (/home/ubuntu/me-n-you/node_modules/express/lib/router/layer.js:95:5)
    at next (/home/ubuntu/me-n-you/node_modules/express/lib/router/route.js:137:13)
    at Route.dispatch (/home/ubuntu/me-n-you/node_modules/express/lib/router/route.js:112:3)
    at Layer.handle [as handle_request] (/home/ubuntu/me-n-you/node_modules/express/lib/router/layer.js:95:5)
    at /home/ubuntu/me-n-you/node_modules/express/lib/router/index.js:281:22
    at Function.process_params (/home/ubuntu/me-n-you/node_modules/express/lib/router/index.js:335:12)
    at next (/home/ubuntu/me-n-you/node_modules/express/lib/router/index.js:275:10)
    at Function.handle (/home/ubuntu/me-n-you/node_modules/express/lib/router/index.js:174:3)
    at router (/home/ubuntu/me-n-you/node_modules/express/lib/router/index.js:47:12)
    at Layer.handle [as handle_request] (/home/ubuntu/me-n-you/node_modules/express/lib/router/layer.js:95:5)
    at trim_prefix (/home/ubuntu/me-n-you/node_modules/express/lib/router/index.js:317:13)
    at /home/ubuntu/me-n-you/node_modules/express/lib/router/index.js:284:7
    at Function.process_params (/home/ubuntu/me-n-you/node_modules/express/lib/router/index.js:335:12)
    at next (/home/ubuntu/me-n-you/node_modules/express/lib/router/index.js:275:10)
  name: 'TokenExpiredError',
  message: 'jwt expired',
  expiredAt: 2018-05-08T21:14:27.000Z }
我重复得到相同的错误,直到很长一段时间,然后我可以再次访问

但是,如果同时使用其他设备或浏览器,我可以访问

我不知道如何修理它。有人对此有任何线索吗

提前谢谢


Richard Xu

如果您使用的是bcrypt,也可以再次登录

bcrypt.compare(req.body.password, data[0].password, (err, resposne) => {
            if (err) {
                res.status(500).json(err);
            }
            //response is either true or false
            if (resposne) {
                const token = jwt.sign({
                    email: data[0].email,
                    userId: data[0]._id
                }, "secret",
                    {
                          expiresIn: "1h"
                    })
                return res.status(200).json({
                    message: 'Auth successful',
                    token: token
                })
            } else {
                return res.status(401).json({ message: 'Auth failed' })
            }
        })

增加您的有效期限制

我正在使用passport模块。