Как должен выглядеть oauthRedirectURL в openFB, используя приложение Cordova?
Я наткнулся на этот плагин openFB, чтобы делать запросы на Facebook без SDK, который может быть использован в Cordova,
Я получил это, чтобы войти в систему пользователя в Facebook, вещь как oauthRedirectURL Я в конечном итоге на белой странице, которая говорит Success
и я не уверен, как вернуть пользователя в приложение,
if (runningInCordova) {
oauthRedirectURL = "https://www.facebook.com/connect/login_success.html";
}
Вопрос в том,
Какой URL я могу использовать, чтобы указать мое приложение?
Пользователь попадает в этот экран после входа в систему
-редактировать-
Я нашел такие решения, как http://localhost.com/oauthcallback.html
но у меня нет apache2 в среде Cordova..
-2-й редактор-
Это мой текущий код,
openFB.init({appId: 'xxxxxxxxyyyyyyyy'});
openFB.login( function(response) {
if(response.status === 'connected') {
alert('Facebook login succeeded, got access token: ' + response.authResponse.token);
} else {
alert('Facebook login failed: ' + response.error);
}
}, {scope: 'email'});
Эта строка библиотеки, которая заполняет это значение
if (runningInCordova) {
oauthRedirectURL = "https://www.facebook.com/connect/login_success.html";
}
1 ответ
Я не использовал openFB раньше, но я уверен, что он основан на следующих документах: https://developers.facebook.com/docs/facebook-login/manually-build-a-login-flow/v2.3
Если вы перейдете в раздел "Вход в систему", вы увидите следующее сообщение:
redirect_uri. URL-адрес, на который вы хотите перенаправить человека, вошедшего в систему. Этот URL будет захватывать ответ из диалога входа в систему. Если вы используете это в веб-просмотре в настольном приложении, это должно быть установлено на https://www.facebook.com/connect/login_success.html.
Когда пользователь FB предоставляет разрешения вашему приложению, оно будет перенаправлено на URL https://www.facebook.com/connect/login_success.html?access_token=new_token&;...
Теперь вам нужно отслеживать этот URL и получать предоставленный токен доступа, который вы должны сохранить с идентификатором пользователя fb для выполнения любого вызова API.
Поглядывая, как это сделать с openFB, я нашел в репозитории openFB github репозиторий, который должен помочь: https://github.com/ccoenraets/OpenFB/issues/20 (не полностью связан, но предоставляет некоторый код, который вы можешь использовать)
Это должен быть код, который позволит вам отслеживать URL (извлеченный из кода, приведенного в теме):
if (runningInCordova) {
loginWindow.addEventListener('loadstart', function (event) {
var url = event.url;
if (url.indexOf("access_token=") > 0) {
// Get the token
}
});
}
Получив токен доступа и сохранив его в своей базе данных, вы должны перенаправить его в любое другое место вашего приложения.
Я надеюсь, что это помогает.
Хавьер.