Маршрутизатор Vue2 против Javascript SDK Facebook: URI перенаправления - PullRequest
0 голосов
/ 27 апреля 2018

У меня есть одностраничное приложение vue2. В компоненте vue я пытаюсь использовать Facebook Javascript SDK для аутентификации и использования Graph API.

В методе я использую этот код для подключения к Facebook

window.fbAsyncInit = function () {
    FB.init({
        appId: 'xxx',
        cookie: true,
        xfbml: true,
        version: 'v2.10'
    });

    console.log(FB);


    FB.getLoginStatus(function (response) {
        statusChangeCallback(response);
    });

};

(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/de_DE/sdk.js";
    js.src = "https://connect.facebook.net/de_DE/sdk/debug.js";
    fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));

Когда приложение выполняет метод FB.getLoginStatus, я получаю сообщение об ошибке « URL заблокирован: это перенаправление не удалось, поскольку URI перенаправления не внесен в белый список в настройках OAuth клиента приложения. ». Я знаю, что должен зайти в настройки своего приложения Facebook и ввести URL-адрес перенаправления в URI перенаправления OAuth .

Моя проблема в том, что я сделал это. URL обратного вызова: https://localhost/myapp/public/api/facebook/callback. Так что я думаю, что я слишком глуп, чтобы найти правильный URL обратного вызова ... Есть идеи, как найти этот?

1 Ответ

0 голосов
/ 26 июня 2018

Я решил проблему с помощью режима истории vue router.

В моем файле js роутера я добавил эту строку:

const router = new VueRouter({
    mode: 'history', // that did the trick
    routes: [ ... ]
})

Возможно, есть лучшее решение, но оно работает для меня ...

...