console.log('DEBUG::+jwtDecode(token).exp', +jwtDecode(token).exp); //1534820211
console.log('DEBUG::try', new Date(+jwtDecode(token).exp).toISOString());
//DEBUG::try 1970-01-18T18:20:20.211Z
I'm having a token with value 1534820211
and when I try to convert it using toISOString()
it gives me year 1970-01-18T18:20:20.211Z
.
But when I decode the same token at jwt.io, and mouse hover over exp
, it shows 2018-08-21....
which is huge difference. I have also tried to pass jwtDecode(token).exp
into moment
and using format, still return me datetime in 1970xxxx
.
moment(jwtDecode(token).exp).format();
The value you have is seconds from epoch.
JavaScript Date
constructor (and moment
function too) accepts value in milliseconds from epoch. Multiply the number by 1000, and your code should work fine:
var exp = 1534820211 * 1000;
console.log(new Date(exp));
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With