Mongoose为特定字段添加expires属性

我已经为我的Web应用程序创build了一个基于令牌的身份validation系统,并且我需要有一个令牌字段的到期date。 保持tokenuser模型如下:

 module.exports = (function() { var userSchema = new Schema({ phone: String, token: { value: { type: String, lowercase: true, trim: true } }, verificationCode: Number, createdAt: { type: Date, default: Date.now() } }); var User = mongoose.model('User', userSchema); return User; })(); 

我想知道是否有任何方式有token字段的到期date属性。 其实我想在我的代码中有下面的东西来检查令牌是否过期:

 User.findOne({}, function( err, user ) { if (user.token.isExpired()) { // do something! } }); 

感谢您带来这个@dyouberg。 是的@sadrzadehsina你也可以使用TTL索引,但是从你的需求angular度来看,唯一的缺点就是一旦文档通过了TTL,MongoDB就会从集合中移除文档。 如果你可以放弃文件,TTL是最好的select,因为一切都将由mongodb自己照顾。 所有你需要做的就是在集合上创build一个索引。

如果你的意图是保持文件,那么TTL可能没有帮助,但你可以build立一个简单的逻辑(我在评论中)。