javascript - Facebook Graph API - 如何请求额外的权限

标签 javascript facebook facebook-graph-api permissions

我正在使用 Facebook Javascript SDK 将用户登录到我的网站。这行得通,我可以在他们登录时请求权限。

但是,按照 Facebook 的建议,我只想在登录时请求最基本的权限,然后在需要时请求额外的权限,因为并非所有用户都需要,例如发布权限。

我的问题是我如何请求额外的权限?我在文档中看到的请求权限的唯一方法是在登录时执行。 This post建议再次调用 FB.login():

FB.login(function(response) {
    // ...do some stuff
}, {
  scope: ['publish_actions']
});

...但是这样做会给我一个错误:FB.login() called when user is already connected。大多数关于该主题的其他帖子只是说在登录时请求所有权限 - 但这违背了 FB 自己的建议。

Plan your app around requesting the bare minimum of read permissions at initial login and then any publish permissions when a person actually needs them

( From the FB Docs )

除了错误之外,调用 FB.login() 确实 似乎工作正常,但如果它明确导致错误,那么这肯定不是正确的方法去吧。我错过了什么吗?

最佳答案

您没有以正确的方式使用它:

FB.login(function(response) {
    // handle the response
}, {
    scope: 'publish_actions,some_other_permission',
    auth_type: 'rerequest'
});

它不是一个数组,它只是一个字符串。您应该尝试使用 auth_type 参数。来源:https://developers.facebook.com/docs/facebook-login/login-flow-for-web/v2.3#re-asking-declined-permissions

关于javascript - Facebook Graph API - 如何请求额外的权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30510684/

相关文章:

facebook - OAuth 2 哈希安全漏洞

android - Android Webview 上的 Facebook 登录按钮重定向到空白页面

ios - 如何在 Objective c 中使用 FBWebDialogs 发送请求

iphone - 如何通过 Facebook iOS SDK 和 Graph API 邀请 friend 加入我的应用程序

javascript - Chrome 调试不会重新加载页面源

javascript - 在另一个 div 中查找 div 的相对位置(ng-drag-drop)

javascript - 如何在具有 contenteditable 属性的 div 中应用文本样式

facebook - 应用程序不允许 "Create Facebook Page"

Facebook "Instagram-Style"拍照 Action

javascript - Kendo Ui 与 Angular - 看不到网格