我对以下代码有问题。根据 JS,如果response.session
有效,它应该alert("User is logged in!");
. 问题是,我很确定会话是有效的,但它会警告“用户未登录!”。我知道会话是有效的,因为我之前登录过,并publish_stream
在窗口出现时允许该应用程序。我也尝试从我的 FB 中删除该应用程序,但是当我再次允许它时,它仍然会提醒“用户未登录!”。我的代码有什么问题?
<html>
<head>
<title>My Facebook Login Page</title>
<script src="//connect.facebook.net/en_US/all.js"></script>
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '436956019655560',
status : true,
cookie : true,
xfbml : true,
oauth : true,
});
};
function fbLogin() {
FB.login(function(response) {
if (response.session) {
console.log("User is connected to the application.");
var accessToken = response.session.access_token;
alert("User is logged in!");
} else {
alert("User is not logged in!");
}
}, {scope:'publish_stream'});
}
</script>
</head>
<body>
<div id="fb-root"></div>
<INPUT TYPE="BUTTON" ONCLICK="fbLogin()" value="login">
</body>
</html>