Не удается авторизовать пользователя в Facebook JS SDK: «Этот код авторизации был использован.» Или как получить новый токен авторизации?
Я пытаюсь использовать Facebook для аутентификации пользователей. Работает нормально, за исключением вызовов Ajax. В большинстве случаев он просто отправляет старый токен, и я получаю:
{"error":{"message":"This authorization code has been used.","type":"OAuthException","code":100}}
Итак, что я пытался сделать, это обернуть каждый вызов ajax с
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
return fn();
...
это не сработало, поэтому яve добавлено: true в качестве параметра getLoginStatus для предотвращения кэширования:
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);
Большой! За исключением того, что это ужасно медленно. Я делаю что-то неправильно? Могу ли я получить новый токен после каждого действия, чтобы мне не нужно было ждать следующего?
Спасибо W