Facebook 图形 API 的 <fb:login-button> 无法识别 scope="..." 属性

Facebook graph api's <fb:login-button> not recognizing scope="..." attribute

当我单击 <fb:login-button scope="user_photos"> 时,登录弹出窗口 window 显示 YOUR_APP will receive the following info: your public profile.,并且无法识别 user_photos 权限。

我会展示更多细节。

我有一个 facebook 应用程序,以前可以用,但现在不能用了。 (所以应该正确设置 facebook 开发者控制台等)我猜这是因为他们的 API 版本更新,因为它突然停止工作,即使我没有对我的代码进行任何更改。

我检查了代码,现在我遇到了一个问题,权限没有被很好地识别。 正如我上面提到的,我使用 <fb:login-button> 按钮作为登录方法,但它无法正常工作。

这是登录按钮 HTML。 (为了便于阅读,代码缩进了,而且我已经从开发者控制台确认这个 HTML 实际上被浏览器接收和识别。)

<fb:login-button 
    id="fb_login"
    scope="user_photos"
    onlogin="checkLoginState();"
    size="xlarge">
        Start Using Right Now
</fb:login-button> 

这是在文档就绪时运行的内容。和教程说的基本一样

window.fbAsyncInit = function() {
    FB.init({
        appId      : 'XXX',
        cookie     : true,  
        xfbml      : true,  
        version    : 'v2.1' 
    });

    FB.getLoginStatus(function(response) {
        statusChangeCallback(response);
    });
};

(function(d, s, id) {
    var js, fjs = d.getElementsByTagName(s)[0];
    if (d.getElementById(id)) return;
    js = d.createElement(s); js.id = id;
    js.src = "//connect.facebook.net/en_US/sdk.js";
    fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));

如果你们需要更多信息,请告诉我。

好的,大概解决了。从过去的某个时候开始,我们需要 facebook 人员在使用特定权限组之前对应用程序进行审查。

查看此权限列表以及哪些权限需要他们的审查和授权。 https://developers.facebook.com/docs/facebook-login/permissions/v2.2

您必须填写这些长表格才能让他们审核该应用。 我正在等待回复,它说需要不到 7 个工作日才能收到回复。