mirror of
https://gitlab.com/wgp/dougal/software.git
synced 2025-12-06 12:17:08 +00:00
@@ -11,12 +11,27 @@ const getToken = function (req) {
|
||||
return null;
|
||||
}
|
||||
|
||||
const onExpired = async function (req, err) {
|
||||
// If it's not too badly expired, let it through
|
||||
// and hope that a new token will be issued soon.
|
||||
const elapsed = new Date() - err.inner.expiredAt;
|
||||
// TODO: Add proper logging
|
||||
// console.log("Expiry details (elapsed, gracePeriod)", elapsed, cfg.gracePeriod*1000);
|
||||
if (elapsed < cfg.gracePeriod*1000) {
|
||||
// console.log("JWT within grace period");
|
||||
return;
|
||||
}
|
||||
|
||||
throw err;
|
||||
}
|
||||
|
||||
const options = {
|
||||
secret: cfg.secret,
|
||||
credentialsRequired: false,
|
||||
algorithms: ['HS256'],
|
||||
requestProperty: "user",
|
||||
getToken
|
||||
getToken,
|
||||
onExpired
|
||||
};
|
||||
|
||||
module.exports = expressJWT(options);
|
||||
|
||||
Reference in New Issue
Block a user