Я настраиваю вход в Facebook для своего веб-приложения Angular6 с помощью метода oauth (без всплывающего окна).Логин не работает при доступе к приложению через встроенный браузер Facebook, и я не могу найти способ его отладки.
Когда я нажимаю ссылку на свое приложение через встроенный браузер FacebookЯ могу зайти на свой сайт и посмотреть его содержимое.Но когда я нажимаю, чтобы войти через Facebook, ничего не происходит.Процесс входа в систему работает нормально при доступе к нему непосредственно из моего приложения или из браузера на рабочем столе - только не из браузера Facebook.Кажется, я не могу найти правильный способ отладки проблемы, видел этот вопрос - но не повезло ни с одним из ответов на него.Ему 4 года - надеетесь, что у кого-то может быть решение сейчас?
Сначала я проверяю статус входа пользователя:
getLoginStatus() {
return new Promise(resolve => {
window.FB.getLoginStatus((response) => {
if (response.status === 'connected') {
resolve(response.authResponse.accessToken);
} else {
resolve(false);
}
});
});
}
Затем, если он подключен, я отправляю запрос на данные пользователя:
getUserInfoWithAccessToken(access_token){
return new Promise((resolve, reject) => {
return this.http.get(`https://graph.facebook.com/me?fields=first_name,last_name,email&access_token=${access_token}`,
{headers: new HttpHeaders({'Content-type': 'application/json'})})
.subscribe(
(response: any) => {
let data = {
'first_name': (response.first_name) ? response.first_name : null,
'last_name': (response.last_name) ? response.last_name : null,
'email': (response.email) ? response.email : null
}
resolve(data);
},
(error: any) => {
reject(error);
})
});
}
и, если он не подключен - я перенаправляю на:
https://www.facebook.com/v3.2/dialog/oauth?client_id=000000000000000&redirect_uri=mysite.com/1234?param=somevalue&response_type=token&state=someState
Веб-сайт должен перенаправить меня на Facebook и запросить соединение, а затем перенаправить обратно в мое приложение.На самом деле - когда я нажимаю, ничего не происходит.