Как я могу закрыть свою сессию в Facebook, если я аутентифицируюсь с помощью Laravel?
У меня есть приложение с php laravel, где оно используется для аутентификации Socialite / Facebook, и мне бы хотелось, чтобы при закрытии сессии оно закрывалось как для моего приложения, так и для Facebook.
Мы уже пытаемся перенаправить на
https://www.facebook.com/logout.php?next=urlapp/&access_token=tokenauth
и это не работает.
Как я могу закрыть сеанс Facebook?
1 ответ
Я решил это с добавлением JavaScript SDK Facebook:
(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 = "https://connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
window.fbAsyncInit = function () {
FB.init({
appId: 'myAppID',
status: true,
cookie: true,
oauth: true,
xfbml: true,
version: 'v2.7'
});
}
Затем в действии моей кнопки выхода из системы:
FB.getLoginStatus(function(response) {
if ((response.status)&&(response.status=='connected')) {
FB.logout(function(response) {
//manage: user is logout
console.log(response);
});
} else {
//manage: user is not connected.
}
});
3 сценария отключения, упомянутые в документации, важны: https://developers.facebook.com/docs/reference/javascript/FB.logout/