Nie można autoryzować użytkownika w Facebook JS SDK: „Ten kod autoryzacji został użyty.” Lub jak uzyskać nowy token autoryzacji?

Próbuję użyć Facebooka do uwierzytelnienia użytkowników. Działa dobrze, z wyjątkiem wywołań Ajax. W większości przypadków wysyła tylko stary token i otrzymuję:

{"error":{"message":"This authorization code has been used.","type":"OAuthException","code":100}}

Tak więc próbowałem zawinąć każde wywołanie ajax za pomocą

FB.getLoginStatus(function(response) {
        if (response.status === 'connected') {
            return  fn();
            ...

to nie zadziałało, więc dodałem: true jako parametr getLoginStatus, aby zapobiec buforowaniu:

FB.getLoginStatus(function(response) {
        if (response.status === 'connected') {
            console.log('connected');
            fn();
        } else if (response.status === 'not_authorized') {
            console.log('not_authorized);
        } else {
            console.log('not_logged_in');
        }
    },true);

Świetny! Tylko że jest strasznie powolny. czy robię coś źle? Czy mogę zdobyć nowy token po każdej akcji, więc nie muszę czekać przed następną?

Dzięki W

questionAnswers(1)

yourAnswerToTheQuestion