如何管理Facebook应用程序授权/注册的最终过程

时间:2011-03-07 20:18:05

标签: php facebook

嗨,我想知道是否有人可以提供帮助 - 我已经设置了一个Facebook应用程序,这一切似乎都正确完成了。我浏览了FB提供的所有教程。但是,我有一个问题似乎阻止我的网站正确集成。

我设置了应用程序页面,当人们点击“转到应用程序”时,他们将被带到权限页面 - 然后他们点击“允许” - 但不是被带到我的应用程序内部的Facebook Canvass / iframe他们直接进入我的主要www.mysite.com域名。在我在youtube等上观看的所有教程中,人们总是在按下“允许”后被带到Facebook中显示的应用程序 - 但是我的Facebook已经退出了我的正常主域。

我使用的画布网址与添加了我的网站和ID相同

http://www.facebook.com/dialog/oauth/?scope=email,user_birthday& client_id = 123050457758183& redirect_uri = http://www.example.com/response& response_type = token

有谁知道我做错了什么?我想一个可能的事情是,一旦画布URL将它们发送到我的网站,我是否应该重定向然后将用户直接重定向回我的Facebook应用页面?这将是http://apps.facebook.com/mysite/ - 这可能是需要做的吗?

这看起来很奇怪,因为我的网站是一种约会应用程序,它应该像Zoosk一样工作。我原本以为应该有一个URL,在他们第一次注册时最初引导他们,这样我就可以收集他们的信息并将其添加为用户,然后再将另一个正常的用户添加为“主页”。我认为在此之前是可能的,但现在只有一个'Canvas URL'可以从'转到app'按钮发送给人们。

我已经在我的主网站上安装了facebook连接,当人们通过此注册时,一切运行顺利 - 一旦完成,它将我的网站添加为人们个人资料的应用程序,他们可以按下去app并在iframe中使用它任何问题。所以从我的网站注册到Facebook没有问题,但是从Facebook注册到我的网站有一个问题。

我对这一切感到困惑,我希望有人可以帮助我理解它。

感谢Nikson:)

1 个答案:

答案 0 :(得分:0)

你试过吗? :-)

是的,您需要链接到您在facebook(http://apps.facebook.com/mysite/)内的应用 Canvas Page

现在来自documentation

<?php 

$app_id = YOUR_APP_ID;

$canvas_page = YOUR_CANVAS_PAGE_URL;

$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"]);
} 
?>