Ho un problema difficile. Difficile significa che ho cercato attraverso la rete e StackOverflow così come tutta la documentazione SDK FBJS e non ho trovato risposta.FB.getLoginStatus non attiva la funzione di callback
Sto costruendo un'applicazione di una scheda di pagina in cui vorrei lasciare che i fan di eventi rsvp. Quindi devo controllare se l'utente è loggato e se non è necessario effettuare il login. Sembra abbastanza facile, ma FB.getLoginStatus non attiva la funzione di callback. Questo è il codice estratto:
FB.init({
appId: window.appID,
status: true,
xfbml: true,
cookie: true,
oauth: true,
channelUrl: 'http://example.com/fb/channel.html'
});
e poi ho semplicemente - naturalmente dopo l'utente fa clic su un pulsante - chiamata FB.getLoginStatus, ma sembra che non fa nulla.
Ho già controllato la modalità sandbox, FB.init successo, URL nelle impostazioni dell'applicazione e ambiente di sviluppo. Posso chiamare FB.ui, anche se FB.ui con metodo: 'oauth' Ricevo un messaggio di errore che dice "Il parametro" redirect_uri "non può essere usato insieme al parametro" next ", che è deprecato.". Il che è molto strano perché non ho usato il parametro "next". Ma quando mi metto vicino a undefined, funziona bene, ottengo la finestra, ma dice "L'URL dato non è consentito dalla configurazione dell'applicazione". Aspettatevi, posso accedere, quindi ho il token di accesso. Ma nella nuova finestra, getLoginStatus continua a non fare nulla.
Quindi qualsiasi consiglio è benvenuto.
Grazie, Tamas
UPDATE:
function onBodyLoad() { //on body onload
FB.init({
appId: window.appID,
status: true,
xfbml: true,
cookie: true,
oauth: true,
channelUrl: 'http://example.com/fb/channel.html'
});
}
...
function getName() { // on button onclick
FB.getLoginStatus(function(response){
if (response.authResponse)
{
window.loggedIn = true;
debugString('Logged in');
} else
{
window.loggedIn=false;
debugString('Not logged in');
}
}, true);
if (window.loggedIn === undefined) {
debugString('getLoginStatus did not exec'); // I always get this message
}
}
UPDATE 2: ho creato una nuova applicazione su un URL diverso, che si configura come un sito web standalone . Questi codici funzionano perfettamente, posso ottenere LogogStatus, posso accedere, ecc. C'è qualche differenza nel contesto di FB e in un sito web standalone, utilizzando l'SDK JavaScript FB?
Forniresti altro codice? – ifaour