Facebook SDK - 在权限请求后重定向

时间:2012-08-08 08:48:16

标签: php facebook redirect sdk

我创建了一个应用程序(在页面选项卡中)。 现在我检查应用程序是否具有所有权限,如果不是我请求它们:

 //$app_url = Url to Page Tab
'<script>top.location.href = "'.$facebook->getLoginUrl('next' => $app_url, 'scope' => $scope).'";</script>'

现在我希望在请求权限后重定向到页面标签(应用程序),但它总是重定向到我的域。

首先使用'redirect_uri'尝试,但是会抛出错误(过时),也会抛出'next'。

任何想法,除非在用户在Facebook上时检查APP?

PS。无法找到最新的解决方案。

编辑: 刚刚看到我作为管理员尝试应用程序时显示以下错误: API错误代码:191 API错误说明:指定的URL不属于应用程序

1 个答案:

答案 0 :(得分:1)

要重定向到您的应用标签,如果您使用PHP Facebook SDK,您可以执行以下操作:

$signedRequest = $facebook->getSignedRequest();
if(!empty($signedRequest) && !empty($signedRequest['page']['id'])){
    $page = $facebook->api($signedRequest['page']);
}

$redirect_uri = $page['link'] . '?sk=app_' . $facebook->getAppId();

$loginUrl = $facebook->getLoginUrl(array(
    'scope' => 'publish_actions',
    'redirect_uri' => $redirect_uri
  ));

然后,在你的HTML中放置:

<script>top.location.href = "<?php echo $loginUrl; ?>";</script>

此外,在您的APP配置中,您必须将(页面标签网址和安全页面标签网址)指向您的域和文件夹。您的应用程序在哪里。