使用的包是 jsonwebtoken
"jsonwebtoken": "^8.3.0"
生成token jwt.sign()
验证token jwt.verify()
签名方法:jwt.sign(payload, secretOrPrivateKey, [options, callback])
payload 是一个json对象或者是一个可以json化的buffer或字符串 这个对象可以存储用户id,会话信息等,这里的信息都是可以使用jwt.verify()方法拿到的.
secretOrPrivateKey是加密的key或者叫做密匙,不知道密匙是无法解析payload参数的.
const jwt = require('jsonwebtoken'); let token = jwt.sign({user: '1234'}, 'Fizz', {expiresIn: 60 * 60}); console.log(token);
解析验证方法:jwt.verify(token, secretOrPublicKey, [options, callback])
token: 就是token字符串 由jwt.sign()方法生成的
secretOrPublicKey:是加密的key,用于解析生成token时的payload参数
options:
设置一些解密的方法....
使用方法
jwt.verify(token, 'Fizz', function (err, data) {if (err) console.log(err)console.log('解析的数据', data)})