【问题标题】:ios Swift Program app to delete things from parse after x amount of time?ios Swift程序应用程序在x时间后从解析中删除内容?
【发布时间】:2016-06-02 03:39:53
【问题描述】:

我正在使用 parse 和 swift 创建一个 ios 应用程序。我希望用户发布在 x 时间后从服务器中删除自己。是否有可能做到这一点 ? 类似于 24 小时后 snapchat 故事消失的方式。

我想在应用程序中,我只会让帖子只有在规定的时间范围内发布时才可见。这会阻止人们看到旧帖子。我知道我需要一个叫做云代码的东西来删除帖子。这是正确的吗?我该怎么做?

【问题讨论】:

    标签: ios swift parse-platform


    【解决方案1】:

    您可以通过查询,获取解析对象的createdAt日期并与当前时间进行比较,如果过期则删除。

    无论在何处检索数据,如果它们是用户帖子,您可以将查询放在加载用户帖子的任何位置。一旦任何人尝试加载该数据并且它太旧,它将被删除并且没有人会看到它。

    【讨论】:

    • 如果我帮助了你介意将我的答案标记为正确答案
    【解决方案2】:

    最好的方法是使用 Cloud Jobs。

    有时你想执行长时间运行的函数,但你没有 想等待回复。 Cloud Jobs 就是为此而生的。阅读更多 [https://docs.parseplatform.org/cloudcode/guide/#cloud-jobs]

    例子:

     // REMOVE A MOMENT VIDEO AFTER 24 HOURS
        Parse.Cloud.job("remove", function (request, status) {
          var date = new Date();
          var timeNow = date.getTime();
          var intervalOfTime =  1*24*60*60*1000;  // 24 hours in milliseconds
          var timeThen = timeNow - intervalOfTime;
    
          // Limit date
          var queryDate = new Date();
          queryDate.setTime(timeThen);
    
          // Query Moments
          var query = new Parse.Query("Moments");
          // Query the Moments after 24 hours
          query.lessThanOrEqualTo("createdAt", queryDate);
    
          query.find({
            success: function (results) {
              console.log("Moments: " + results.length);
    
              // Delete Moment
              query.each(function (object, err) {
                object.destroy({
                  success: function (object) {
                    console.log("Successfully deleted: " + object.objectId);
                  },
                  error: function (error) {
                    console.log("Error: " + error.code + " - " + error.message);
                  },useMasterKey: true 
                })
              })
            },
            error: function (error) {
              console.log("Error: " + error.code + " - " + error.message);
            }
          });
        });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-16
      • 2012-06-18
      • 2013-12-11
      相关资源
      最近更新 更多