mirror of
https://github.com/aljazceru/landscape-template.git
synced 2025-12-17 06:14:27 +01:00
22 lines
589 B
JavaScript
22 lines
589 B
JavaScript
|
|
const cookie = require('cookie')
|
|
const jose = require('jose');
|
|
const { JWT_SECRET } = require("./consts");
|
|
|
|
const extractKeyFromCookie = async (cookieHeader) => {
|
|
const cookies = cookie.parse(cookieHeader ?? '');
|
|
const token = cookies.Authorization;
|
|
if (token) {
|
|
try {
|
|
const { payload } = await jose.jwtVerify(token, Buffer.from(JWT_SECRET), {
|
|
algorithms: ['HS256'],
|
|
})
|
|
return payload.pubKey
|
|
} catch (error) {
|
|
return null
|
|
}
|
|
}
|
|
return null;
|
|
}
|
|
|
|
module.exports = extractKeyFromCookie; |