zhulj 9c05da023f
2022-06-08 16:47:41 +08:00

25 lines
667 B
JavaScript

const { verifyToken } = require('../utils')
const { apiPrefix } = require('../config')
let whitePath = [
'/login',
'/get-pub-pem'
].map(item => (apiPrefix + item))
const useJwt = async ({ request, res }, next) => {
const { path, headers: { token } } = request
if(whitePath.includes(path)) return next()
if(!token) return res.fail({ msg: '未登录', status: 403 })
const { code, msg } = verifyToken(token)
switch(code) {
case 1:
return await next()
case -1:
return res.fail({ msg, status: 401 })
case -2:
return res.fail({ msg: '登录态错误, 请重新登录', status: 401, data: msg })
}
}
module.exports = useJwt