isa-auth-core
Version:
69 lines (68 loc) • 1.71 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
function _export(target, all) {
for(var name in all)Object.defineProperty(target, name, {
enumerable: true,
get: Object.getOwnPropertyDescriptor(all, name).get
});
}
_export(exports, {
get configureJwtManager () {
return configureJwtManager;
},
get getTokenFromHeader () {
return getTokenFromHeader;
},
get getTokenPayload () {
return getTokenPayload;
},
get isExpiredToken () {
return isExpiredToken;
},
get isValidToken () {
return isValidToken;
}
});
const _jwtManager = require("./jwtManager");
let jwt;
function configureJwtManager(secret) {
jwt = new _jwtManager.JwtManager({
secret
});
}
function isValidToken(token) {
try {
jwt.verify(token);
return true;
} catch {
return false;
}
}
function isExpiredToken(token) {
const decoded = jwt.decode(token);
if (!decoded || typeof decoded !== 'object' || !decoded.exp) {
return true; // 만료로 간주
}
const expiresAt = decoded.exp * 1000;
return Date.now() >= expiresAt;
}
function getTokenPayload(token) {
try {
return jwt.decode(token);
} catch (error) {
return null;
}
}
function getTokenFromHeader(header) {
var _parts_;
if (!header) return null;
const parts = header.trim().split(' ');
if (parts.length !== 2 || parts[0].toLowerCase() !== 'bearer') {
return null;
}
const token = (_parts_ = parts[1]) === null || _parts_ === void 0 ? void 0 : _parts_.trim();
return token || null;
}
//# sourceMappingURL=index.js.map