facebook fbml login-button无法使用perms

Cli*_* C. 5 javascript facebook fbml

当我升级到新的php和js sdk时,我最近遇到了一个问题

在下面的登录按钮正常工作之前,弹出对话框以供用户授予权限.

<fb:login-button perms="email,user_about_me,user_interests,user_location,publish_stream,read_stream,offline_access,publish_checkins">Connect Facebooks</fb:login-button>
Run Code Online (Sandbox Code Playgroud)

现在对话框不会弹出,但如果我取出"烫发"并使用此按钮

<fb:login-button">Connect Facebook</fb:login-button>
Run Code Online (Sandbox Code Playgroud)

弹出对话框.有任何想法吗?

Ben*_*pan 7

更新:导致此问题的错误已得到解决,因此您最好的选择是使用<fb:login-button>静止,但将"perms"更改为"scope"以匹配最新的API更改:

<fb:login-button
    scope="email, user_about_me, user_interests, user_location,
    publish_stream, read_stream, offline_access, publish_checkins">
    Connect Facebooks
</fb:login-button>
Run Code Online (Sandbox Code Playgroud)

如果您在此之后仍然遇到问题或者想要另一种登录按钮样式:实际上没有什么特别之处<fb:login-button>,它只是一种简单的方式来呈现登录按钮,这是(大部分)FB.login()点击时调用的东西.通过执行以下操作,您可以通过更多的工作来创建自己的登录按钮:

<a id="fb_login_button" href="#" 
      onclick="FB.login(function(){ /* this is a callback function */ },
      {scope: 'email, user_about_me, user_interests, user_location,
       publish_stream, read_stream, offline_access, publish_checkins'});
       return false;">
    <img src="LOGIN_BUTTON_IMAGE.png" alt="Log In with Facebook">
</a>
Run Code Online (Sandbox Code Playgroud)

登录按钮图像是任何图像或文本(您甚至可以使用由其呈现的屏幕截图<fb:login-button>).

(注意:onclick这里使用内联,所以这是独立于库的,并不意味着它是一个很好的做法)