如果在FB开发者网站的某处清楚地记录了这一点,我提前道歉 - 但是我找不到它(所以如果合适请联系我)。
我已经使用GAE + Python在网站上实现了FB登录按钮。这是HTML:
<fb:login-button></fb:login-button>
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script>
FB.init({appId: 'ad16a806fc10bef5d30881322e73be68', status: true, cookie: true, xfbml: true});
FB.Event.subscribe('auth.sessionChange', function(response) {
if (response.session) {
// A user has logged in, and a new cookie has been saved
} else {
// The user has logged out, and the cookie has been cleared
}
});
</script>
目前的行为是 - 如果我点击“登录”按钮,我被要求允许应用程序访问FB。然后我选择“OK”。但是登录按钮仍然显示“登录”而不是“注销”。我该如何实现?在服务器端或客户端?
答案 0 :(得分:24)
由于某些原因,它没有记录在FB SDK login-button page上,但您可以将autologoutlink="true"
属性添加到标记中,如果您已登录,它将显示注销按钮,而不仅仅是按钮看不见。
<fb:login-button autologoutlink="true"></fb:login-button>
警告:如果您在登录按钮上使用自定义文字,它将忽略该标记
<!-- This will always display the button, whether you are logged in or out -->
<fb:login-button autologoutlink="true">Login To My Service!</fb:login-button>
答案 1 :(得分:0)
感谢用户“哈哈”,解决方案是:
1)抓住Facebook Python SDK:https://github.com/facebook/python-sdk/tree/master/examples/appengine 2)实现HTML示例:https://github.com/facebook/python-sdk/blob/master/examples/appengine/example.html 3)更新主请求处理程序和模型:https://github.com/facebook/python-sdk/blob/master/examples/appengine/example.py
答案 2 :(得分:0)
现在已在https://developers.facebook.com/docs/reference/plugins/login/记录了这一点。您可能还想查看onlogin
以获得回调。
答案 3 :(得分:0)
Derek没有提到他推荐的HTML5替代方案:
<div id="fbloginbut" scope="user_birthday" onlogin="checkLoginState();" class="fb-login-button" data-max-rows="1" data-size="large" data-show-faces="false" data-auto-logout-link="true"></div>
以下页面将生成您最喜欢的登录/注销按钮的代码: https://developers.facebook.com/docs/plugins/login-button