生成带有创建时间的唯一令牌

Generate unique token with creation time inside

只使用java 8,没有其他库,我需要生成一个5分钟后过期的唯一令牌,但我不想在数据库上保存创建时间,而是想存储创建时间在令牌中稍后使用时对其进行解码。

我该怎么做?

您可以简单地生成一个由两部分连接而成的令牌:

  1. 第一部分是一个 UUID,以确保令牌是唯一的; UUID reference
  2. 第二部分是您可以稍后解码的时间戳

这就是你问题的答案

String token = UUID.randomUUID().toString() + ":" + System.currentTimeMillis();
String[] t = token.split(":");
String token_time = t[1];

然后你可以用 token_time 变量做任何你想做的事 希望对你有帮助