Facebook邀请用户访问应用页面

时间:2011-07-01 13:50:13

标签: javascript facebook facebook-page

我有一个Facebook应用程序,我已添加到Facebook页面。我想允许用户邀请朋友转到打开该应用的页面并与该应用进行互动。

我可以邀请朋友加入这样的应用:

FB.ui({ method: 'apprequests',
        message: '...'
     });

但我真的想邀请他们访问该应用所在的网页,而不是应用本身。

我可以允许用户使用以下链接向朋友发送消息:https://www.facebook.com/dialog/send?app_id=...这样我就可以在我的Facebook页面中添加一个链接,但是想知道是否有更好的方法呢?

特别是我非常喜欢显示所有朋友的复选框的apprequests ui。有什么方法可以使用这个ui,但是推广页面而不是app?

1 个答案:

答案 0 :(得分:1)

由于应用程序是唯一的,但可以插入多个页面,因此没有官方可以邀请您的朋友直接访问您的页面。

您需要做的是检查您的应用被调用的上下文。我不知道你是否使用PHP作为后端,但有些服务器端代码是必要的。

您必须查找Facebook发送给您的 signed_request ,以及其中是否有页面。然后将此上下文保存在会话

如果您熟悉PHP,这可能会对您有所帮助:

$signed_request = $fb->getSignedRequest();

if (isset($_REQUEST['signed_request'])){
    $context = (isset($signed_request['page'])) ? 'tab' : 'app';
    $_SESSION['fb_context'] = $context;
}
else {
    $context = isset($_SESSION['fb_context']) ? $_SESSION['fb_context'] : 'app';
}

如果您发现它在应用程序上下文中,您可以重定向到指定的标签页。

if ($context == 'app') {
    header('Location: ...');
}