2011-05-25 188 views
2

我正在创建一个Facebook应用程序,它可以作为自定义选项卡添加到Facebook粉丝页面。在应用程序设置中,我可以看到“Deauthorize Callback”,当用户从应用程序页面中移除应用程序到指定的URL时,它会发送带有页面详细信息的已签名请求。是否有一个选项可以指定一个授权回调URL,当用户首次将该应用程序安装到该页面时,该授权回调URL会收到一个包含页面详细信息的请求Facebook应用程序授权回调URL

请帮忙。

在此先感谢。

回答

2

曾几何时,有一个授权回调。所以,你的问题是完全合理的。

Facebook已将其从应用设置表单中删除。所以可能它已经消失了,但我在这个问题上还没有看到任何“官方”的字眼。 (也就是说零功能正在消失)。

您仍然会在wildly out-of-date application properties page上找到属性authorize_url。但是,有人猜测他们是否会继续调用这个回调函数,如果你在它从表单中删除之前碰巧设置了它。

2

不,Facebook不提供后授权等效的取消授权回调。

但是,您不需要:一旦用户授权您的应用程序,您将在signed request中找到用户的凭证和访问令牌。

+0

谢谢。我试图让用户从我的网站添加一个标签。用户使用Facebook连接API进行授权。用户粉丝页面的列表显示在我的网站中。用户可以选择一个页面并发布到Facebook。我在那个时候存储了页面详细信息,但是用户可以选择在去facebook.com之后不安装。希望追踪这种情况。 – 2011-05-25 07:59:14

4

一旦用户授权/或不授权您的应用程序,他将被重定向到您在身份验证URL中指定的“redirect_uri”。

如果用户按下了“不允许”,那么您的应用程序未被授权。基于OAuth的认证对话框将重定向(通过HTTP 302),用户的浏览器到你的REDIRECT_URI参数传递,出现以下错误信息的网址:

http://YOUR_URL?error_reason=user_denied& error=access_denied&error_description=The+user+denied+your+request.

如果用户按下允许,您的应用程序被授权。基于OAuth的认证对话框将重定向(通过HTTP 302),用户的浏览器到你的REDIRECT_URI参数传递与授权码的网址:

http://YOUR_URL?code=A_CODE_GENERATED_BY_SERVER

你总是可以为您在回调动作ERROR_REASON和错误参数确定用户没有授权应用程序。

完整的文档在这里:
http://developers.facebook.com/docs/authentication/

+0

谢谢。我试图使用http://www.facebook.com/add.php?api_key= &pages = 1&page = 将应用程序添加到Facebook粉丝页面。用户从我的网站上选择应用程序和Facebook粉丝页面。使用这个URL,用户被引导到Facebook网站,他必须将应用程序发布到页面。但用户可以选择不。无法找到任何可用于识别用户未将应用程序发布到Facebook的回调。 – 2011-05-31 05:34:06

+0

链接将我带到我的主页。正如我已经告诉你的,在这两种情况下都会调用回调函数,用户是否授权应用程序。您需要输入正确的代码来检查回调函数中的错误条件,即检查url中的错误参数。看看上面的url格式,花一些时间阅读文档。我希望“发布应用程序到页面”意味着授权facebook应用程序发布。 – 2011-06-01 00:57:17

1

你可以在Facebook的应用程序设置中找到它。

进入设置菜单,然后进入高级选项卡,然后找到“OAuth设置”。您将有一个名为“有效的OAuth重定向URI”的输入,您可以在此处输入多个URL。

我用它为科尔多瓦Facebook验证,它的工作原理。

0

现在位于Facebook开发人员工具“产品> Facebook登录>设置”下。您会看到“有效的OAuth重定向URI”部分......希望能帮助某人。

相关问题