根据数据的存储方式,有几种不同的选择可以按时间戳删除数据。
假设数据是未排序的,并且您已经将时间戳存储为每个记录中的一个字段,那么您可以简单地从第一条记录开始读取并删除它们,直到找到您想要保留的一条:
<script>
var FB = new Firebase(YOUR_URL);
var childRef = FB.child( TABLE_WITH_RECORDS_TO_DELETE );
var oneWeekAgo = new Date().getTime()-1000*60*60*24*7; // one week ago
var fx = function(snapshot) { // keep a ref to this so we can call off later
var v = snapshot.val();
if( v.expires_on_date < oneWeekAgo ) {
// delete the record
snapshot.ref().remove();
}
else {
// we found the first keeper, so we are done
childRef.off('child_added', fx);
}
}
// fetched records and test to see how old they are
childRef.on('childAdded', fx);
</script>
如果数据是按时间戳排序的,您可以按照如下方式检索和删除它们:
var FB = new Firebase(YOUR_URL);
var childRef = FB.child( TABLE_WITH_RECORDS_TO_DELETE );
var oneWeekAgoMinusOne = new Date().getTime()-1000*60*60*24*7-1; // one week ago
// fetched using endAt, so only retrieving older than 1 week
childRef.endAt( oneWeekAgoMinusOne ).on('childAdded', function(snapshot) {
// delete the record
snapshot.ref().remove();
});
简短的一般性问题:是否有一个侦听器(无论是firebase realtime、函数还是一般的侦听器)可以设置存储在firebase realtime对象中的日期,并在该日期到期时删除该对象? 长的具体问题:我正在与firebase实时数据库和firebase功能建立一个市场应用程序,用户可以对产品进行投标,但这些投标将在应用程序中存储的日期到期。用户也可以通过最高或最低的出价搜索/过滤产品,我正在
问题内容: 我想知道您的想法: 在会话期间,我必须获得与系统的所有连接。为了使这一过程自动化,我决定使用current_date%,因为current_date不是字符串,而是一个函数,因此该方法不起作用。 所以我的问题是,是否有人可以帮助我进行查询以获取当日所有连接的数量。 提前致谢! 我糟糕的代码: 问题答案: 最好的方法(从性能的角度来看)是使用如下逻辑: 并非所有数据库都支持日期的ISO
我跟随这本指南,与绝地武士一起收听Redis密钥过期通知。但我不知道如何获取其过期值。 是否有方法获取过期密钥的值? 请帮忙。非常感谢。
下面是我用来访问过去10天前的日期的代码。输出为'20130103',即今天的日期。我如何返回今天的日期-10天?我被限制使用内置的java日期类,所以不能使用joda时间。
我正在构建一个 Firebase 应用,并且刚刚实施了电子邮件验证流程。但是,我认为如果验证电子邮件不会过期,这可能是一个问题。这样,用户只需使用随机电子邮件地址注册而不对其进行验证,这意味着具有该电子邮件地址的真实人员无法再注册(firebase.auth().createUserWithEmailAndPassword将仅在“身份验证”选项卡中创建此用户,并且该电子邮件地址无法再使用)。有没有
我正在尝试使用Postman通过云消息服务发送一次推送通知。 这是一个用于相同目的的工作命令,我将其用作参考。 到目前为止我所做的。。 1-适当设置标题 2-在Body,我使用 执行时,我返回