编码时,我开始想知道是否有可能在发送实际请求之前执行操作。
例如我有一个代码:
FB.ui({method: 'apprequests',
title: 'The Challenge Game!',
message: 'I challenge you!',
}, challengeCallback);
我希望我的用户能够只挑战一次朋友 - 这意味着,如果连接两个用户的数据库中存在挑战,则在第一个用户完成或过期之前不应该创建另一个挑战。
因此,在挑选朋友和发送请求之间应该有一个函数调用。
但是我知道,在请求实际发送之前我不会获得用户fb_id。
在选择朋友之后,我总是可以提示我的用户,该特定人员的挑战已经存在并且正在等待处理。但是,在他/她的收件箱中等待受到挑战的请求会发生什么?
有什么我不能创造我自己的朋友选择器吗?也许以某种方式改变FB.ui?
答案 0 :(得分:2)
当您查看the description of the Requests dialog时,您会注意到参数exclude_ids
,您可以通过该参数指定将从多朋友选择器中排除的用户ID。
因此,如果您在数据库中查找用户已向其发送请求的朋友,您可以将这些ID放在那里。
Only cave-at:移动设备不支持此参数;因此,如果您要定位那些,您可能需要寻找另一种解决方案(最有可能是create your own multi-friend selector) - 但我现在不确定此限制是否仅适用于 native 移动应用;也许在网络应用程序中使用JS SDK时,它也适用于那些(文档中的措辞并不完全清楚)。