Express 如何确定特快/猫鼬日期是否为>;24小时?
我的目标是防止电子邮件在24小时内发送不止一次。我有一个模式:Express 如何确定特快/猫鼬日期是否为>;24小时?,express,mongoose,mean-stack,Express,Mongoose,Mean Stack,我的目标是防止电子邮件在24小时内发送不止一次。我有一个模式: var requestSchema = new mongoose.Schema({ email: String, lastSent: Date }); 在我的快速路线中,我正在测试lastssent变量是否在一天前 var lastSent = new Date(existingRequest.lastSent); var nextDate = new Date() - 1; if (lastSent >
var requestSchema = new mongoose.Schema({
email: String,
lastSent: Date
});
在我的快速路线中,我正在测试lastssent
变量是否在一天前
var lastSent = new Date(existingRequest.lastSent);
var nextDate = new Date() - 1;
if (lastSent > nextDate) {
if (constants.dev){ console.log('Signup request too soon'); }
} else {
// Process request
}
。。。然而,我似乎无法赶上日期。将日期记录到Express控制台会显示以下内容:
Last Sent: Tue Dec 16 2014 10:12:54 GMT-0500 (Eastern Standard Time)
Threshold: 1418746385786
是否有可能日期格式不匹配
24*60*60*1000
来减去一整天完美的谢谢双重皈依是诀窍。我最初是开始减去毫秒的,所以这是一个简单的替换。转换是导致我大脑受伤的部分
var nextDate = new Date(new Date() - 24*60*60*1000);
if(existingRequest.lastSent > nextDate) {...}