【问题标题】:Facebook api permissions scope issueFacebook api权限范围问题
【发布时间】:2014-06-30 20:04:05
【问题描述】:

我有这个登录脚本

$('#getFbImg').click(function () {
        FB.getLoginStatus(function(response) {
            if (response.status === 'connected') {
                var uid = response.authResponse.userID;
                var accessToken = response.authResponse.accessToken;
                getPermissions(uid);
                getUserAlbums(uid);
                getUserUploads(uid);
            } 
            else if (response.status === 'not_authorized') {
                // the user is logged in to Facebook, 
                // but has not authenticated your app
            } 
            else {
                // the user isn't logged in to Facebook.
                FB.login(function(response) {
                    if (response.authResponse) {
                        var uid = response.authResponse.userID;
                        var accessToken = response.authResponse.accessToken;
                        getPermissions(uid);
                        getUserAlbums(uid);
                        getUserUploads(uid);
                    } else {
                        console.log('User cancelled login or did not fully authorize.');
                    }
                }, {scope: 'public_profile,user_photos'});
            }
        });
    });

要求用户登录才能继续。弹出窗口工作正常,登录正常,但似乎没有注册权限。 非常奇怪的部分是我的帐户(也是应用程序中的管理员)被要求提供权限,但其他所有帐户都没有。 这是带有权限对象的图片

编辑:如果我向范围添加另一个权限,例如用户生日,我的帐户会被要求接受新权限的访问,但不会要求其他帐户这样做。

第二次编辑:我添加了几个其他管理员帐户来检查是否是因为我是管理员,我仍然遇到权限问题,应用程序没有访问他们的 user_photos,但是它仍然给我的帐户

【问题讨论】:

    标签: javascript facebook permissions


    【解决方案1】:

    我猜您正在使用 Graph API v2.0,但尚未为您的应用获得 user_likesuser_photos 权限:https://developers.facebook.com/docs/apps/changelog#v2_0_permissions

    使用 Facebook 登录的应用需要超过 public_profile (默认),email 和 user_friends 需要 Facebook 审核 为了向人们请求这些权限。

    查看https://developers.facebook.com/docs/apps/review 的审核流程。

    【讨论】:

    • 这是否也适用于使用该应用程序的网站?因为我根本没有使用该应用程序,实际上没有应用程序,我只需要应用程序 ID 部分的“应用程序”。其他一切都是用javascript完成的
    • 好吧,你必须在某个地方请求权限,即使使用 JavaScript SDK...
    • 即这一行{scope: 'public_profile,user_photos'});??
    • 是的,我可以阅读,谢谢。登录对话框中是否显示非管理员用户的权限?
    • 对话框要求权限,但不是上一行中指定的,我申请了新权限,将在 5 到 7 天后看到..!
    猜你喜欢
    • 1970-01-01
    • 2014-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-18
    相关资源
    最近更新 更多