我有我的应用http://apps.facebook.com/svolzesocial。当您单击该链接时,如果您还没有登录到Facebook仍然可以访问画布。我想避免这种情况。用户必须登录Facebook并且必须被授权使用应用程序。 我在下面找到了这个代码,它的工作正常。但在应用程序中我使用wordpress并且它不允许用户阅读任何文章,它会重定向到主应用程序页面。
<?php
$app_id = "APP_ID";
$canvas_page = "CANVAS_PAGE";
$auth_url = "http://www.facebook.com/dialog/oauth?client_id="
. $app_id . "&redirect_uri=" . urlencode($canvas_page);
$signed_request = $_REQUEST["signed_request"];
list($encoded_sig, $payload) = explode('.', $signed_request, 2);
$data = json_decode(base64_decode(strtr($payload, '-_', '+/')), true);
if (empty($data["user_id"])) {
echo("<script> top.location.href='" . $auth_url . "'</script>");
} else {
echo ("Welcome User: " . $data["user_id"]);
}
?>
答案 0 :(得分:0)
对于redirect_uri,您可能希望将其设置为最初请求的网页的网址,而不仅仅是画布应用的网址。