通过登陆
// 通过token获取用户信息
router.get('/info', async (ctx) => {
ctx.body = {
res: verify(getToken(ctx)),
code: 1,
data: '获取成功',
}
})
加密
请求时候 data: { user, token: jwt.sign(user, 密钥) },
var jwt = require('jsonwebtoken')
// 引入密钥
const config = require('../../project.config.js')
// 文件中内容
// module.exports = {
// DEFAULT_PASSWORD: '123456',
// JWT_SECRET: 'booklogin',
// }
// 获取token
const getToken = (ctx) => {
let { authorization } = ctx.header
return authorization.replace('Bearer ', '').replace('bearer ', '')
}
// 解密
const verify = (token) => {
return new Promise((resolve, reject) => {
jwt.verify(token, config.JWT_SECRET, (err, playload) => {
if (err) {
reject(err)
return
}
resolve(playload)
})
})
}
module.exports = {
verify,
getToken,
}