1

我正在构建一个执行以下操作的应用程序:

  1. 从 Facebook 获取好友
  2. 选择 1-2 个朋友并将他们添加到群组中

我希望用户能够使用 Facebook 登录并让它浏览所有组并带回他们的朋友可能在其中的任何组。每个组都保存在 Apigee 中,并具有 1-2 个 Facebook id 属性。

我不确定实现这一目标的最佳方法。

下面就是我所做的至少尝试一下。显然,每次我循环浏览朋友时发送请求是一个可怕的想法。

请帮忙?

http://apigee.com/docs/app-services/content/querying-your-app-services-data

function get_groups(){

   //Stores array of friend ids
   var friends = [];

   //Request to Facebook and get friends
   FB.api('/me/friends', 'GET', function(data){

       for (i = 0; i < data.data.length; i++){
           friends.push(data.data[i].id);
       }
       request(friends)
   });

   function request(friends){

    for ( i = 0; i < friends.length ; i++) {

        //Set ids to look for in the groups
        var options = {
            endpoint:"groups",
            qs:{ql: "id1='" + friends[i] + "' or id2='" + friends[i] +"'"},
        }
        //Request to Apigee to query groups 
        client.request(options, function (err, data) {
            if (err) {
                 console.log(err);
            } else {
                //do something with the data
            }   
        });     
      }
   }
}
4

2 回答 2

0

我认为您可以使用此处定义的查询概念:http: //apigee.com/docs/app-services/content/querying-your-data

除此之外,我相信您现在正在尝试的任何事情都是最好的方法。因为我不知道有什么方法可以在一次调用中获取组中的所有实体并比较实体中的数据(在本例中为 facebook id)。

【有没有其他方法也想学习】

于 2014-01-28T12:16:13.060 回答
0

您可以探索基于 Groups 的实体关系选项,看看是否可以简化 http://apigee.com/docs/app-services/content/entity-relationships

于 2014-02-02T13:13:07.757 回答