5

我刚刚开始使用 Facebook Graph API。

如何仅通过 1 个 FB.api 调用来调用多个属性?现在,我有

        FB.api('/me', function(me){
          if (me) {
            var myEmail = me.email;
            var myID = me.id;
            var myFirst_name = me.first_name;
            //Other attributes
          }
        });

        FB.api('/me/friends',{ fields: 'name,id' }, function(response){
            var friends = response.data;
        }
       });

如何将两个 API 调用合二为一,比如只有 1 个FB.api()调用?

所有的回应都会真的很有帮助。

4

1 回答 1

7

如何将两个 api 调用合并为一个,例如,只有 1 个 FB.api() 调用?

您可以将它们组合成一个批处理请求——但这会使处理响应变得更加复杂,而且我不确定它是否会在这样一个简单的用例中带来任何“性能”增益。

编辑:

现在有一种使用字段扩展功能的新方法¹:

/me?fields=id,email,first_name,friends.fields(id,name)

– 这将为您提供当前用户的请求字段 id、email 和 first_name,以及他们朋友的 id 和名称。(实际上,,friends如果您只想要他们的 id 和 name 就可以了,因为这些是 API 提供的默认字段 - 但如果您还想要其他字段,您可以使用添加它们,friends.fields(…)。)


¹实际上已经有一段时间了,但是这个问题现在又引起了我的注意,所以我想补充一下。

于 2012-06-21T09:38:17.047 回答