#facebook #facebook-javascript-sdk
#Facebook #facebook-javascript-sdk
Вопрос:
Я хочу, чтобы мой веб-сайт входил в систему с помощью facebook, но я вижу эту ошибку.
<script>
// This is called with the results from from FB.getLoginStatus().
function statusChangeCallback(response) {
console.log('statusChangeCallback');
// for FB.getLoginStatus().
if (response.status === 'connected') {
// Logged into your app and Facebook.
// alert('login fb');
document.getElementById('login').style.display = 'none';
document.getElementById('startbtn').style.display = 'block';
testAPI();
} else if (response.status === 'not_authorized') {
// The person is logged into Facebook, but not your app.
alert('not authorized');
} else {
// The person is not logged into Facebook, so we're not sure if
alert('not login fb');
document.getElementById('login').style.display = 'block';
document.getElementById('startbtn').style.display = 'none';
}
}
function checkLoginState() {
FB.getLoginStatus(function(response) {
statusChangeCallback(response);
});
}
window.fbAsyncInit = function() {
FB.init({
appId : 'my app id',
oauth : true,
cookie : true, // enable cookies to allow the server to access
// the session
xfbml : true, // parse social plugins on this page
version : 'v2.5' // use graph api version 2.5
});
</script>
Он работает на mycomputer и другом компьютере.Но один из компьютеров
Показать оповещение (не авторизовано) и не может войти в систему.
Как я могу решить эту проблему.
Ответ №1:
Вы можете вызвать представление входа в Facebook, если статус есть not_authorized
. Попробуйте это:
if (response.status === 'not_authorized') {
// The person is logged into Facebook, but not your app.
console.log('Please log into this app.');
fbLogin();
}
function fbLogin(){
FB.login(function(response) {
if (response.authResponse) {
console.log('Welcome! Fetching your information.... ');
FB.api('/me/?fields=picture,name,email', function(response) {
console.log(response);
console.log('Successful login for: ' response.name);
document.getElementById('status').innerHTML =
'Thanks for logging in, ' response.name '!';
});
} else {
console.log('User cancelled login or did not fully authorize.');
}
});
}
Комментарии:
1. Я все еще сталкиваюсь с новой ошибкой. Firefox не позволил этому сайту открыть новое всплывающее окно.