【发布时间】:2017-07-03 15:18:01
【问题描述】:
当我点击注销时...我在控制台中得到这个异常:
在没有访问令牌的情况下调用 FB.logout()。
问题:我已经在 Session 中保存了访问令牌,并且我也可以在客户端访问它。我已经检查了这个答案,但无法理解如何调用 handleSessionResponse 方法以及单击注销按钮时的响应值如何? https://stackoverflow.com/a/8430670/726802
我在布局页面(母版页)中有以下代码。
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '{!! env("FACEBOOK_APP_ID") !!}',
xfbml : true,
version : '{!! env("Facebook_Version") !!}'
});
FB.AppEvents.logPageView();
};
(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {return;}
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
下面是blade(内容页)中的代码
<ul class="nav nav-sidebar">
<li class="active"><a href="#" onclick="logout();">Logout</a></li>
</ul>
<script>
function checkLoginState() {
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
} else {
}
});
}
function logout() {
debugger;
FB.logout(function(response) {
debugger;
// user is now logged out
});
}
</script>
【问题讨论】:
-
尝试使用参数
cookie和/或status设置为true 来初始化JS SDK - 以便它意识到您已经有一个服务器端登录会话。 -
好的,你能分享一下代码吗?
-
你解决了吗?
-
还没有。我还在等待答案
标签: facebook-javascript-sdk laravel-5.3 facebook-php-sdk laravel-5.4