你好 Facebook 开发者社区,
我目前正在使用 HTML/JS 开发多人在线游戏。我只想允许用户注册游戏,我决定允许他们使用他们的 Facebook 帐户登录。我为此创建了一个 Facebook 网站应用程序。
但是当我fb:login
在我的页面上设置一个按钮时,对话框不会询问我设置的权限(仅供参考:我只是在 Authenticated Referrals 部分配置它们)。
也许我需要在其他地方配置权限,但是使用新的身份验证对话框,我不确定我需要去哪里..
你好 Facebook 开发者社区,
我目前正在使用 HTML/JS 开发多人在线游戏。我只想允许用户注册游戏,我决定允许他们使用他们的 Facebook 帐户登录。我为此创建了一个 Facebook 网站应用程序。
但是当我fb:login
在我的页面上设置一个按钮时,对话框不会询问我设置的权限(仅供参考:我只是在 Authenticated Referrals 部分配置它们)。
也许我需要在其他地方配置权限,但是使用新的身份验证对话框,我不确定我需要去哪里..
经过身份验证的推荐对 的使用没有影响fb:login-button
,它们旨在链接到您在 Facebook 本身上的应用程序。
要向用户请求权限,您应该使用Login Buttonscope
的参数,这是请求和权限的简单示例(HTML5 和 XFBML):email
user_location
<div class="fb-login-button" data-scope="email,user_location"></div>
<fb:login-button scope="email,user_location"></fb:login-button>
更新:
如评论中所述,这些属性可能很容易被“高级”用户操纵,以避免授予权限。无法指定将要求用户从应用程序设置授予哪些权限。这本身并不是一个真正的问题,因为经过身份验证的推荐人会遇到同样的问题,一旦用户看到身份验证步骤,他可能会将scope
参数更改为他想要的任何内容。
实际上,您永远不应该信任来自用户的任何内容,因此您最好在他登录后通过查询 Graph API 检查授予的权限:
https://graph.facebook.com/me/permissions
如果缺少某些内容,这将返回用户授予您的应用程序的权限列表。