【问题标题】:Parsing the response object from sending a Facebook Invite Friend Request从发送 Facebook 邀请好友请求中解析响应对象
【发布时间】:2015-06-02 22:03:48
【问题描述】:

我正在使用 Facebook Javascript SDK,我正在尝试建立一个奖励系统来向朋友发送邀请。基本上,我想给用户积分,让他们使用 Facebook Javascript SDK 提供的朋友邀请对话框简单地向他们的朋友发送邀请。也就是说,我根据 FB 开发者网站上的 Friend Smash 教程设置了所有内容,并且我正在创建一个自定义的多朋友选择器来发送邀请。邀请对话框正确出现并且邀请正确发送。

发送邀请的 Javascript 如下所示:

function sendRequest() {
               // Get the list of selected friends
               var sendUIDs = '';
               var mfsForm = document.getElementById('mfsForm');
                 for(var i = 0; i < mfsForm.friends.length; i++) {
                   if(mfsForm.friends[i].checked) {
                     sendUIDs += mfsForm.friends[i].value + ',';
                   }
                 }

               // Use FB.ui to send the Request(s)
               FB.ui({method: 'apprequests',
                 to: sendUIDs,
                 title: 'Help me get some points!',
                 message: 'Help me get some points by coming over to XXX and registering to play!',
               }, callback);
             }

但是,当发送给一位朋友时,请求的响应对象如下所示:

{request: "412752342228182", to: Array[1]}

邀请两个朋友时是这样的:

{request: "414967121961627", to: Array[2]}

该对象包含“请求”字段,它是邀请的唯一请求 ID,正如预期的那样。 Facebook 文档指出,我应该在响应对象的“to”字段中获取收件人的用户 ID 数组,但那个奇怪的 Array[X] 却在那里。这是正确的反应吗?我错过了什么吗?

对此的任何帮助表示赞赏。在此先感谢您的时间。

【问题讨论】:

  • “基本上,我想给用户积分,因为他们只是简单地向他们的朋友发送邀请”——这是不允许的。最多,您可以奖励他们成功的邀请,即当他们的一位朋友接受请求并加入应用程序时。在继续之前,您应该阅读Platform Policies
  • @CBroe - 是的,我在发布答案后立即发现了这一点,并且已经增加了奖励规则,不仅要注册,还要玩至少 1 场比赛。不过,请注意!

标签: facebook facebook-graph-api facebook-javascript-sdk facebook-php-sdk facebook-apps


【解决方案1】:

没关系,我想通了。 Array[X] 更像是实际数组的占位符,因此如果您解析为 [0] 或 to[1],您将获得您邀请的用户的实际用户 ID。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多