You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
planka_custom/server/api/helpers/utils/verify-jwt-token.js

31 lines
465 B
JavaScript

const jwt = require('jsonwebtoken');
module.exports = {
sync: true,
inputs: {
token: {
type: 'string',
required: true,
},
},
exits: {
invalidToken: {},
},
fn(inputs) {
let payload;
try {
payload = jwt.verify(inputs.token, sails.config.session.secret);
} catch (error) {
throw 'invalidToken';
}
return {
subject: payload.sub,
issuedAt: new Date(payload.iat * 1000),
};
},
};