Wie man den Benutzer von der Facebook-Anwendung abmeldet, aber den Login von Facebook erhält

9

Ich habe das PHP SDK (v.3.1.1) und das aktuelle Javascript SDK ausprobiert wie hier vorgeschlagen: Ссылка

Beim Ausloggen habe ich jetzt beide FB.logout () versucht (für js) und $ facebook- & gt; getLogoutUrl ();

als die Dokumentation für beide klar, diese Methoden Protokollieren Sie den Benutzer sowohl aus der Anwendung als auch aus seiner Facebook-Sitzung.

Aber ich muss den Benutzer nur von der Facebook-Anwendung (der Testseite) ausloggen.

Ich habe versucht, den Benutzer von meiner Testseite abzumelden und dabei Facebook zu ignorieren Aspekt. Aber in diesem Fall, wenn der Benutzer erneut auf die Login-Schaltfläche klickt, Der Login-Flow (Facebook-Authentifizierung und Redirect) passiert nicht.

Ich habe auch versucht: (wie von den vorherigen ungelösten Fragen vorgeschlagen)

%Vor%

jedoch, wenn auf die Anmeldeseite umgeleitet wird, $ facebook- & gt; getUser () noch Ruft den Benutzer ab.

Hinweis: Wie im Dokumentationsbeispiel verwende ich php sdk, um den Benutzer auf meiner Testseite einzuloggen, und die js sdk, um den Facebook-Login-Button zu rendern und zu erleichtern.

zusätzlich:

Die Authentifizierung, die ich verwende, ist im Grunde, was die Dokumentation vorschlägt:

%Vor%     
Alias 20.03.2012, 08:51
quelle

1 Antwort

5

Nehmen Sie Ihren Code und ändern Sie nur ein wenig:

%Vor%

Ich habe gerade das Speichern der Benutzerdaten in die Sitzung hinzugefügt. Nun, wenn Sie diese Methode verwenden, wenn der Benutzer auf Ihre Seite kommt, sollten Sie überprüfen, ob er bereits eine Sitzung hat, wenn alles gut ist, müssen Sie ihn nicht authentifizieren.

Wenn Sie den Benutzer außerhalb Ihrer App, aber nicht außerhalb von Facebook anmelden möchten, löschen Sie einfach diese Sitzung:

%Vor%

Das sollte alle gespeicherten Daten entfernen, die Sie für den Benutzer haben, beim nächsten Besuch Ihrer Seite können Sie mit ihm neu anfangen.

Ich bin kein PHP-Programmierer, und alles, was ich hier benutze, ist von meinem (sehr) begrenzten Wissen und dem, was ich da gefunden habe.

    
Nitzan Tomer 20.03.2012, 09:54
quelle