@escueladigital/micro
Version:
Microservice manager for nodejs with kafka
38 lines (37 loc) • 890 B
JavaScript
const JwtConfig = {
getHeader: function getHeader() {
if (this.header && this.header.authorization) {
const parts = this.header.authorization.split(' ')
let scheme
let credentials
let token
if (parts.length === 2) {
;[scheme, credentials] = parts
if (/^Bearer$/i.test(scheme)) {
token = credentials
}
return token
}
}
return null
},
middleware: async (ctx, next) => {
if (ctx.state.usuario) {
const parts = ctx.header.authorization.split(' ')
let scheme
let credentials
let token
if (parts.length === 2) {
;[scheme, credentials] = parts
if (/^Bearer$/i.test(scheme)) {
token = credentials
}
ctx.state.jwt = token
}
} else {
ctx.state.jwt = null
}
await next()
},
}
module.exports = JwtConfig