JWT 如何解码和获得令牌失效的日期

如果你有一个 JWT 的字符串 。
你在使用 JWT 的时候可能希望了解 JWT 这个令牌过期的时间 。 你可以对 JWT进行解码 , 解码的网站是 JWT 的官网。
【JWT 如何解码和获得令牌失效的日期】访问上面的网站 , 然后将你的 JWT 字符串拷贝到需要解码的字符串上 , 然后对字符串进行解码 。
JWT 如何解码和获得令牌失效的日期文章插图
在解码的对象后 , 你会看到 exp 。
上面的 exp 就是JWT 过期的日期 。
JWT 的 exp 是一个数字的组合 , 这是因为这个字符串使用的是 Unix 的时间 。
1970年 ,Unix正式诞生 , 在第一版《Unix Programmer’s Manual》中把“1971年11月3日”定义为“自1970年1月1日0時0分0秒以来以1/60秒为单位的时间” 。 此后 , 这个定义由于可定义的时间范围 , 时区 , 闰秒等问题被重新定义 。
可以使用下面的方法 , 将 Unix 时间戳 , 转换为可以识别的日期对象 。
/*** Format Unix Time UTC TimeZone to EST Time** @throws Exception*/@Testpublic void unixTimeStampTest() throws Exception {DateTime dateTime = new DateTime(1602516354 * 1000L, DateTimeZone.UTC);logger.debug("dateTime for EST is - [{}]", dateTime.toDateTime(DateTimeZone.forID("America/New_York")));}运行上面的代码 , 将会输出为:
2020-10-12 16:06:31.858 DEBUG--- [main] com.insight.sco.service.test.UtilTest: dateTime for EST is - [2020-10-12T11:25:54.000-04:00]上面的时间是将时间转换为美国东部时间 。