2011-05-17 70 views
2

IM 2.0(http://developers.facebook.com/docs/reference/dialogs/requests/)如何获取好友列表使用新的请求邀请在Facebook应用程序与要求2.0

所以用户我设置了一切,工作正常 - 我只剩下一个问题。当用户选择50个朋友邀请我的应用程序。我需要的是邀请这些人的用户ID(因此用户不能再次邀请他们)。

我现在所做的是让每个用户ID都像这样的调用: $ data = $ facebook-> api('/'.$ request_id。'/'); $ USER_ID = $数据[ '到'] [ 'ID'];

所以我循环槽50 $ request_id的并获得用户的ID。

但这afcourse很慢,因为我做50个请求(有时它不工作在所有...)。那么是否有更好的方式从新的Requests 2.0对话框中获得邀请用户ID?

+0

不,实际上就是这样。您可以使用[批量API(http://developers.facebook.com/docs/api/batch/)的请求减少。 – ifaour 2011-05-17 18:10:52

+0

嗯,我检查了一批API - 但有20所请求的限制,所以这也是没有办法了。我还检查FQL(http://developers.facebook.com/docs/reference/fql/),但对于要求不表(或我错过了什么?)。无论如何,我只是不能相信我只有一个相同的问题? – Peter 2011-05-19 12:13:43

回答

0

在现阶段它并不像有一种替代战略,通过所有的request_ids循环。
为什么不尝试将您从对话框中获得的request_ids拆分为更小的组,并可能在处理组之间放置一段短暂停顿......或者再次利用批量请求在请求之间暂停。这些请求需要时间 - 您必须禁用对话框的触发器,直到完成request_ids的处理,然后将这些用户IDS添加到exclude_ids属性。

如果你限制你的用户只发送一个请求给每个用户,你可能会考虑只管理你的请求,只有当他们被回复时...... 你允许用户发送尽可能多的请求到他们想要的用户 - 那么当该请求被遍历用户未完成的请求回应你删除来自同一用户的,类似你上面提到的:

$data = $facebook->api('/'.$request_id.'/','DELETE');

0

我所做的就是获得用户的朋友列表,那么只需使用我从请求信息中获得的用户标识查找好友名称即可。

0

只是检查所有请求的全部细节在一个单一的呼叫:

https://graph.facebook.com/?access_token=<ACCESS TOKEN>&ids=<CSV LIST OF THE REQUEST IDS>

相关问题