解析云代码组合响应

时间:2016-03-29 19:06:21

标签: javascript ios swift parse-platform cloud-code

在我的iOS应用程序中,我有一个应用程序活动屏幕。这包括来自请求数据库表的请求和来自评论表的评论/喜欢。

我正在尝试将所有查询转移到云代码中。在活动屏幕中,所有请求/喜欢/评论都会填充,现在我正在使用两个网络调用来获取此数据,但我想将我的功能的响应结合起来使用一个网络调用来获取用户通知。

这是我的云代码功能:

这里我加载了通知对象。

   Parse.Cloud.define("loadRequestNotifications", function(request, response){
   var currentUser = Parse.User.current();

   var query1 = new Parse.Query("Requests"); 
   query1.equalTo("requestUser", currentUser);

   var username = currentUser.get("username");     

   var query2 = new Parse.Query("Requests");
   query2.equalTo("driver", username);

    var main1 = Parse.Query.or(query1, query2); 
    main1.include("drivePointer");
    main1.include("drivePointer.driver");
    main1.limit(15);  

     main1.find({
      success: function(results) {
          response.success(results);
       },
      error: function(error) 
      {
        response.error(error);
      }
    }); 
});

这里我加载当前用户对帖子的喜欢和评论。

Parse.Cloud.define("loadLikesAndCommentsNotifications", function(request, response) {
    var currentUser = Parse.User.current();

    var query3 = new Parse.Query("Posts"); 
    query3.equalTo("driver", currentUser); 

    var query4 = new Parse.Query("Posts");
    query4.equalTo("passengers", currentUser.get("objectId")); 

    var main2 = new Parse.Query.or(query3, query4); 

    var main3  = new Parse.Query("Comments"); 
    main3.matchesKeyInQuery('postId', 'objectId', main2);

    var main4 = new Parse.Query("Comments"); 
    main4.equalTo("commentBy", currentUser); 

    var activityQuery = new Parse.Query.or(main3, main4); 
    activityQuery.include("commentBy");
    activityQuery.limit(15); 

   activityQuery.find({
      success: function(results) {
          response.success(results);
       },
      error: function(error) 
      {
        response.error(error);
      }
    });
});

0 个答案:

没有答案