Jac*_*don 0 javascript api facebook
我遇到以下代码的问题.根据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>
Run Code Online (Sandbox Code Playgroud)
我很确定response.session不再存在了.我相信你需要寻找response.authResponse.查看FB.login上的文档:
截至2011年12月13日,JavaScript SDK现在仅支持OAuth 2.0进行身份验证.在JS SDK中启用OAuth 2.0的能力于7月首次推出.所有应用程序都将在2011年10月1日之前进行测试和迁移.通过此更改,请确保您已将response.session替换为response.authResponse.
请尝试检查response.authResponse.此外,尝试将响应对象记录到控制台,并确切了解您要回复的内容.
| 归档时间: |
|
| 查看次数: |
1661 次 |
| 最近记录: |