如何在 Redis 记录中添加 unix 时间戳作为过期时间?

How to add unix timestamp as expiry in Redis records?

我正在尝试将 unix 时间戳添加到 redis 中的记录,所以我使用 expireat 来这样做。我已经能够使用以下方法实现我想要的:

tokenBlacklist.set(splitId[0], splitId[1]);
tokenBlacklist.expireat(splitId[0], tokenExp); //tokenExp example: 1558786197  

现在,我想知道上面的解决方案是否有任何一种衬垫,例如:

tokenBlacklist.set(splitId[0], splitId[1], "EX", tokenExp);

SET命令只能指定TTL,不能指定过期时间点。所以你可以使用 tokenExp - current-time-in-second 作为参数。

tokenBlacklist.set(splitId[0], splitId[1], "EX", tokenExp - Math.round((new Date()).getTime() / 1000));

注意:

我不熟悉javascript。如果以秒为单位获取当前Unix时间的方法有误,请指出。谢谢