自定义使mongodb中的文档过期



我想让mongodb中的文档过期我发现,如果文档的架构中有这样的东西,文档可能会过期并从数据库中删除:

{
name: string,
createdAt:{ type: Date,           
expires: '1d', 
default: Date.now() 
}
}

1d表示所有文档将在一天内过期,我希望文件有不同的有效期,如果我的主体是,我如何从POST请求主体获得此值

{ 'name': 'pius', 'expiry': '3d'}

将我的模式更改为

{
name: string,
createdAt:{ type: Date,           
expires: string, 
default: Date.now() 
}
}

我可以通过请求传递过期字符串值吗?如果可以,如何完成

TTL索引是一种特殊的单字段索引,MongoDB可以使用它在一定时间后或特定的时钟时间自动从集合中删除文档。数据过期对于某些类型的信息很有用,如机器生成的事件数据、日志和会话信息,这些信息只需要在数据库中保留有限的时间。

db.eventlog.createIndex( { "lastModifiedDate": 1 }, { expireAfterSeconds: 3600 } )

您可以查看此链接以了解更多详细信息。

使用框架或本地nodejshttp模块。解析请求并将其正文转换(或转换(为JSON。访问de属性并调用mongodb的插入操作。在这种情况下,文档将在请求中指定的日期过期。

请参阅express req.body文档和路由器声明以获取更多详细信息。

最新更新