Não é possível autorizar o usuário no Facebook JS SDK: "Este código de autorização foi usado" ou como obter um novo token de autorização?
Estou tentando usar o Facebook para autenticar usuários. Ele funciona ok, exceto para chamadas Ajax. Na maioria das vezes, basta enviar o token antigo e recebo:
{"error":{"message":"This authorization code has been used.","type":"OAuthException","code":100}}
Então, o que eu tentei fazer é envolver cada chamada ajax com
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
return fn();
...
isso não funcionou, então eu adicionei: true como parâmetro para getLoginStatus para evitar o cache:
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);
Ótimo! Exceto que é terrivelmente lento. Estou fazendo algo errado? Posso obter um novo token após cada ação, por isso não preciso esperar antes do próximo?
Obrigado W