如何使用app选择的多个收件人创建请求对话框

时间:2011-08-30 02:17:28

标签: javascript facebook-javascript-sdk

模拟人生社交有自己的朋友选择器。一旦你选择你的朋友并点击提交,它就会抛出这个官方的Facebook请求对话框,其上有多个朋友,并且有一个复选框,上面写着“在向模拟人生社交请求发送之前不要询问......”

我该如何复制?我已经尝试将数组发送到apprequests ui对话框,但这会出现“错误消息:收件人太多。”

image

我没有使用Facebook好友选择器。我正在使用自己的并将其发送到apprequests对话框。模拟人生这样做,我无法重现它。

FB.ui({
    method: 'apprequests',
    message: 'Send a gift',
    data: {},
    title: "Send a gift",
    to: uids[0] + "," + uids[1]
});

我用字符串列表“1234,4567”尝试了字段。我用阵列{1234,4567}尝试过它。但都不起作用。具有单个UID的数组工作正常。但是多个UID会显示“错误消息:收件人太多。”

4 个答案:

答案 0 :(得分:2)

根据Facebook documentation(确实不太好),您可以在[]属性中传递JavaScript数组to。看起来uids已经是一个数组了,所以试试这个:

FB.ui({
    method: 'apprequests',
    message: 'Send a gift',
    data: {},
    title: "Send a gift",
    to: uids
});

答案 1 :(得分:1)

您可以使用“请求”对话框执行此操作 - https://developers.facebook.com/docs/reference/dialogs/requests/

每个请求最多可以有50个收件人(对IE的一些限制,如文档中所述)。

使用多个ID,您可以将“to”参数中的收件人指定为JavaScript数组,例如'to:[1,2,3]'

答案 2 :(得分:1)

我的猜测是你需要被Facebook列入白名单以获得这种超级大国。模拟人生社交使用与您相同的参数,但能够指定多个收件人。您应该要求Facebook为您的应用做同样的事情。

答案 3 :(得分:0)

根据2011年9月29日发布的Improvements to Request 2.0帖子

  

您可以在请求的“to”字段中指定user_ids数组   对话框。

  function sendRequestToManyRecipients() {
    var user_ids = document.getElementsByName("user_ids")[0].value;
    FB.ui({method: 'apprequests',
      message: 'My Great Request',
      to: user_ids,
    }, requestCallback);
  }