Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript转换JWT会导致错误的过期日期_Javascript_Date_Jwt - Fatal编程技术网

使用javascript转换JWT会导致错误的过期日期

使用javascript转换JWT会导致错误的过期日期,javascript,date,jwt,Javascript,Date,Jwt,这是我的JWT: "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE1OTgxMDM1MTcsIm5iZiI6MTU5ODEwMzUxNywianRpIjoiNzcxMjcyZjAtODQxNC00NDU5LTg5OGQtNzJiNGMzNGMyZGZjIiwiZXhwIjoxNTk4MTA0NDE3LCJpZGVudGl0eSI6Im1heHBvd2VyIiwiZnJlc2giOmZhbHNlLCJ0eXBlIjoiYWNjZXNzIi

这是我的JWT:

"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE1OTgxMDM1MTcsIm5iZiI6MTU5ODEwMzUxNywianRpIjoiNzcxMjcyZjAtODQxNC00NDU5LTg5OGQtNzJiNGMzNGMyZGZjIiwiZXhwIjoxNTk4MTA0NDE3LCJpZGVudGl0eSI6Im1heHBvd2VyIiwiZnJlc2giOmZhbHNlLCJ0eXBlIjoiYWNjZXNzIiwidXNlcl9jbGFpbXMiOiJtYXhwb3dlciJ9.ilycgqpuyvnnHm63JPD9a9r090-Bu__uj2auEFnk3HA"
我从我的Flask API中得到了这个,并尝试像这样解码它:

const result = VueJwtDecode.decode(data.data.access_token);
console.log(result);
const expirationDate = result.exp;
console.log(expirationDate)
这将导致一个数字(毫秒?)

我试图将其转换回正常的日期格式

const expirationDate = new Date(result.exp)
console.log(expirationDate);

Mon Jan 19 1970 12:55:04 GMT+0100 (Mitteleuropäische Normalzeit)
这显然是错误的。我做错了什么?为什么这会导致1970年?

1598104755是自1970年以来的秒数

与某些语言不同,JavaScript的日期是以毫秒为基础的,因此在传递到
新日期之前需要乘以1000:

console.log(
新日期(
1598104755 * 1000
)
);谢谢,很快;-)。我会在几分钟内接受你的回答
const expirationDate = new Date(result.exp)
console.log(expirationDate);

Mon Jan 19 1970 12:55:04 GMT+0100 (Mitteleuropäische Normalzeit)