adonis5-swagger
Version:
Swagger provider for AdonisJS 5
20 lines (19 loc) • 687 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AuthHeaderDecoder = void 0;
class AuthHeaderDecoder {
decode(authHeader) {
const matchResult = AuthHeaderDecoder.headerPattern.exec(authHeader);
if (!matchResult) {
return { success: false };
}
const { token } = matchResult.groups;
const [login, password] = Buffer.from(token, 'base64').toString().split(':');
return {
success: !!(login && password),
payload: { login, password },
};
}
}
exports.AuthHeaderDecoder = AuthHeaderDecoder;
AuthHeaderDecoder.headerPattern = /^Basic (?<token>\w+={0,2})$/gi;