导入
const {sign,decode,verify}=require('jsonwebtoken');
1. sign(payload, secretOrPrivateKey, [options, callback])
let token=sign({name:'xxx'}, 'secret', { algorithm: 'HS256',expiresIn:60});
// payload // 需要加密的内容
// secretOrPrivateKey // 加密所用的字符串或者private.key密钥文件
// options // 参数列表
{
algorithm: 'HS256', // 加密使用的算法 如果不使用private.key 只能使用HS开头的算法
expiresIn:'10s' // 有效时间 若加密内容不是对象 则无法设置有效时间 可以是数字、字符串 如 60, "2 days", "10h", "7d".
}
// callback 回调函数 如果有回调函数 则是以异步方式在回调函数中接收两个参数 err和token
// 若没有回调函数 则是以同步的方式返回token
2. jwt.verify(token, secretOrPublicKey, [options, callback])
let verifyResult=verify(token,'secret');
// token 需要验证的token
// secretOrPublicKey 加密时使用的加密字符串
// options 参数列表
// callback 回调函数 有则是异步返回 没有是同步返回结果 (err,decoded)
3. jwt.decode(token [, options])
let decodeResult=decode(token)
// token 需要解密的token
// options 参数列表 如json:boolean,
直接以同步的方式返回解密之后的结果和verify基本一致