我想一个简单的代码来验证访问我的网站时,用户是否登录到Facebook。
警报1和2的显示和多数民众赞成。
为什么没有警报3 4 5未示出??我试过这样的例子很多,但没有工作:( :(
<!DOCTYPE html>
<html>
<head>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script>
window.onload = function(){
alert("1");
FB.init({ apiKey: '203642573046113', status: true });
alert("2");
FB.getLoginStatus(function(response) {
alert("3");
if (response.status === 'connected') {
alert("4");
} else if (response.status === 'not_authorized') {
alert("5");
} else {
alert("6");
}
});
};
</script>
</head>
<body>
HELLO WORLD
</body>
</html>
实际上,我还没有应用。
FB.getLoginStatus获取用户的关于您的应用程序的状态 - 没有一个应用程序,它没有任何意义,试图调用此方法。
只是想找出用户是否登录到Facebook。
你不能做到这一点。
问题是这样的https://developers.facebook.com/bugs/1657864107810379/
我想张贴在该网页下面,但它给了错误。
关于上述问题 - 这适用于你的问题,因为你,我假设在某个时候发布了FB.Logout()
。这将设置一个cookie,它的设计可以防止这种“getLoginStatus”再次合作。
仍然是个问题。
难道是事先设计好的 - 我相信它是。不过才因为某个作品的设计并不能使它没有一个可怕的想法。
有几个问题#1引用此错误,这个问题FB.getLoginStatus not working
从根本上说这是问题:(https://developers.facebook.com/docs/reference/javascript/FB.getLoginStatus)
用户要么无法登录到Facebook或明确地登出您的应用程序,因此它不会试图连接到Facebook,因此,我们不知道他们是否已经验证您的应用程序或没有。 (未知)
所以,如果你登出它设置cookie fblo_629812369426907(这是我的应用程序ID)
然后,这是由设计它不检查登录状态以后再。
需要有FB.Logout(真)不设置一个愚蠢的FBLO饼干。
我想在我的网站我的用户注销,但仍然知道他们登录Facebook来使“登录与Facebook”选项更为突出。
因此,似乎任何回答#1建议删除这个cookie其实都是正确的“设计”的行为,以避免这一点。