【问题标题】:Using Javascript to send an invite to facebook friend使用 Javascript 向 Facebook 好友发送邀请
【发布时间】:2013-04-04 06:43:45
【问题描述】:

从 2 天起,我就开始尝试邀请 Facebook 朋友加入我们的应用程序。仍然没有得到解决方案。 我已经尝试了以下代码及其向朋友发送请求,但没有收到任何时间线或通知或任何东西。

<ul id="fcbklist">
    <?php foreach($facebook_friends as $key => $friend): ?>
        <li> <img src="https://graph.facebook.com/<?php echo $key; ?>/picture"/><strong><?php echo $friend;?></strong><br />
             <input type="checkbox" name="friendids[]" class="checkbox" value="<?php echo $key;?>" />
        </li>
    <?php endforeach; ?>
</ul>

<div id="fb-root"></div>
<script type="text/javascript" src="http://connect.facebook.net/en_US/all.js"></script>
<script type="text/javascript">

        FB.init({
            appId  : '259234574212521',
            frictionlessRequests: true
        });

      function sendRequestToRecipients() {
        var ids = [];
        $('.checkbox').each(function() {
            if($(this).is(':checked')) {
                ids.push($(this).val());
            }
        })
        alert(ids);
        var user_ids = ids;
        FB.ui({method: 'apprequests',
          message: 'Request to StoryTag',
          to: user_ids
        }, requestCallback);
      }

      function sendRequestViaMultiFriendSelector() {
        FB.ui({method: 'apprequests',
          message: 'Request to StoryTag'
        }, requestCallback);
      }

      function requestCallback(response) {
        // Handle callback here
        if(response){
            ///SUCCESS HERE
            alert('successful');
        } else {
            ///FALIURE COMES HERE
            alert('failure');
        }
      }
    </script>

请帮我摆脱它。工作更受赞赏。

【问题讨论】:

  • 你是怎么触发sendRequestToRecipients()的?

标签: facebook-javascript-sdk facebook-requests facebook-invite


【解决方案1】:

apprequest的参数“to”应该是String,而不是Array,所以需要改 var user_ids = ids; 到 var user_ids = ids.join(',');

文档:http://developers.facebook.com/docs/reference/dialogs/requests/#direct_request

【讨论】:

  • 我做到了,但他们仍然没有得到任何东西。
  • 所以,如果请求发送正常,但目标用户看不到它们,那么问题可能是您的应用处于“沙盒模式”?仪表板中应用的“基本”设置中有一个单选按钮。如果您不想禁用沙盒模式,那么您应该在设置的“开发人员角色”部分中将此朋友添加为测试人员/开发人员。
  • Marat Gilyazov: 嘿,谢谢,我现在开始工作了。你会建议我向选定的用户发送消息吗?根据 facebook javascript sdk,我们一次只能向一个用户发送消息。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-12
  • 2011-10-27
  • 1970-01-01
  • 2012-08-27
  • 2015-01-03
相关资源
最近更新 更多