您好,我想知道如何设置在dynamo数据库中居住的时间。
我知道我必须创建一个字段,该字段可以称为ttl
并设置要删除的值,但是我必须保存nodejs
的哪种格式才能用于{{ 1}}字段持续20或24小时?
感谢帮助。
答案 0 :(得分:2)
来自official DynamoDB documentation:
TTL将时代时间格式的当前时间与存储的时间进行比较 在项目的生存时间属性中。 [...]
注意
时代开始 格式是自1月1日上午12:00:00以来经过的秒数, 1970 UTC。
在Javascript中,您可以通过执行Date.now()
获得自纪元以来的毫秒数。一旦有了,就可以将所有内容除以1000得到秒数(也舍入到最接近的整数值),最后在所需的TTL中添加秒数。
这意味着,如果您要从现在开始设置到期时间24,则可以轻松设置TTL字段,并使用以下方式计算出的值expirationTime
:
const SECONDS_IN_AN_HOUR = 60 * 60;
const secondsSinceEpoch = Math.round(Date.now() / 1000);
const expirationTime = secondsSinceEpoch + 24 * SECONDS_IN_AN_HOUR;