Nicht Abmelden von Facebook mit Facebook C# SDK
Ich denke, dass ich gelesen habe nur über alles, was da draußen auf dem Thema der Abmeldung von Facebook innerhalb einer Desktop-Anwendung. Bisher nichts funktioniert.
Speziell, ich würde gerne melden Sie den Benutzer aus, so dass Sie wechseln Identitäten, z.B. Personen teilen sich einen computer zu Hause und könnte dann mit der software mit Ihrer eigenen Facebook-Konten, aber keine chance, das Konto zu wechseln, es ist ziemlich chaotisch. (Habe noch nicht getestet, Schalt-Windows-Benutzer-Konten, wie, dass ist einfach viel zu viel zu Fragen der end-user und nicht notwendig sein sollte.)
Nun, ich muss sagen, dass ich die Anwendung diese Berechtigungen:
string[] permissions = new string[] { "user_photos", "publish_stream", "offline_access" };
So, "offline_access" ist enthalten. Ich weiß nicht, ob das wirkt/wirken soll sich Abmelden oder nicht.
Wieder, mein Ziel für das Abmelden ist nur den Benutzer zu wechseln. (Wenn es ein besserer Ansatz, lassen Sie es mich bitte wissen.)
Den angeblichen Lösungen zu sein scheinen:
- Mit dem JavaScript-SDK (FB.logout())
- Verwenden "m.facebook.com" statt
- Erstellen Sie Ihre eigenen URL (und evtl. m.facebook.com)
- Erstellen Sie Ihre eigenen URL, und verwenden Sie die session-variable (in ASP.NET)
Die erste ist die Art von albern. Warum resort zu JavaScript, wenn Sie mit C#? Es ist eine Art von Rückschritt und hat eine Menge von zusätzlichen Aufwand, in einer desktop-Anwendung. (Ich habe nicht versucht, es ist einfach eklig, unordentlich, dies zu tun in einer desktop-Anwendung.) Wenn jemand bestätigen kann, dass dies die einzige funktionierende Methode, so tun Sie dies bitte. Ich bin verzweifelt versuchen, es zu vermeiden.
Die zweite nicht funktioniert. Vielleicht ist es in der Vergangenheit gearbeitet, aber meine zig versuche, um es zu arbeiten, haben die alle gescheitert.
Dritten nicht funktioniert. Ich habe versucht, zig Dutzend Varianten mit null Erfolg.
Letzte option, es funktioniert nicht für eine desktop-Anwendung, weil es nicht ASP.NET und Sie müssen nicht, eine session-variable mit zu arbeiten.
Das Facebook C# SDK logout auch nicht mehr funktioniert. also
public FacebookLoginDialog(string appId, string[] extendedPermissions, bool logout)
{
IDictionary<string, object> loginParameters = new Dictionary<string, object>
{
{ "response_type", "token" },
{ "display", "popup" }
};
_navigateUri = FacebookOAuthClient.GetLoginUrl(appId, null, extendedPermissions, logout, loginParameters);
InitializeComponent();
}
Ich erinnere mich, es in der Vergangenheit, aber es funktioniert nicht mehr jetzt. (Was wirklich verwirrt mich...)
Stattdessen leitet nun die user auf die Facebook mobile-Seite, wo der Benutzer muss sich manuell Abmelden.
Jetzt konnte ich tun, browser-Automatisierung, automatisch, klicken Sie auf den Abmelden-link für die Benutzer, dies ist jedoch anfällig zu brechen, wenn Facebook updates der Benutzeroberfläche für Mobilgeräte. Es ist auch unordentlich, und möglicherweise eine schlechtere Lösung als zu versuchen, mit dem JavaScript-SDK FB.logout () - Methode (wenn auch nicht viel).
Ich habe gesucht für eine Art von Dokumentation, die ich allerdings nicht finden können, was in der Facebook developer Dokumentation, die zeigt, wie das Abmelden einer Anwendung.
Hat jemand dieses problem gelöst oder gesehen, keine Dokumentation, die portiert werden können Arbeit mit dem Facebook C# SDK?
Bin ich selbstverständlich offen, mit einem WebClient oder HttpClient/Reaktion, wenn jemand kann auf eine Dokumentation, die könnte mit ihm arbeiten. Ich habe einfach nicht in der Lage gewesen, zu finden, low-level-Dokumentation, die zeigt, wie dieser Ansatz funktionieren könnte.
Vielen Dank im Voraus für jegliche Tipps, Hinweise oder links.
InformationsquelleAutor Ryan Smyth | 2011-06-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese Frage beantwortet wurde hier, der Vorschlag ist, verwenden Sie die url unten, um sich logout-seit facebook ist offenbar das überspringen der "next" - parameter
InformationsquelleAutor bpaulon
Ich vermute, Sie möchten, melden Sie die Benutzer aus, so dass Sie können melden Sie einen anderen account. In dem Fall würde ich vorschlagen, diesen Ansatz mit der WebAuthenticationBroker:
Nachdem eine ganze Weile zu Experimentieren, und hat kein Glück mit einem der Beispiele oben habe ich herausgearbeitet, dass die Vorlage eine logout-Anfrage mit der redirect-url, Ihren login-url funktioniert tadellos.
Hier ist der code, den ich verwendet, um die Kette der Anfragen zusammen:
Nun jedes mal, wenn Sie direkte der Benutzer auf die WebAuthenticationBroker wird der Benutzer weitergeleitet auf die Anmeldeseite.
InformationsquelleAutor James Mundy
Sehen diese blog-post
Holen Sie sich die logout-url mit FacebookOAuthClient() & senden Sie einen http-request auf die url..
Sorry -- das ist nicht in Ordnung. Es tut die gleiche Sache, also Den logout-Versuch liefert die Facebook mobile-Seite (m.facebook.com) und der user ist noch angemeldet.
InformationsquelleAutor sandeep
Naja, ich hab gedreht bis nichts mehr funktioniert, also ich habe gegriffen zu einer fiesen hack.
Den FacebookOAuthClient.GetLogoutUrl () - Methode URL Logt mich nicht aus, allerdings sieht es zurück "m.facebook.com" URL, z.B.:
http://m.facebook.com/logout.php?next=http://www.facebook.com/dialog/oauth/?response_type=token&display=popup&scope=user_about_me%252coffline_access&client_id=123456789012345&redirect_uri=http%253a%252f%252fwww.facebook.com%252fconnect%252flogin_success.html&confirm=1
Die mobile Seite hat eine "Abmelden" - link am unteren Rand der Seite.
Versuchen Sie, fangen die Anker-tag:
In der WebBrowser Navigiert Ereignis ist unvorhersehbar und unzuverlässig. Die eigentliche Methode zu fangen ist es nicht relevant. z.B. funktioniert Das nicht, entweder:
Allerdings kann es gefangen werden zuverlässig in das DocumentCompleted-event-handler.
Das problem ist, dass es jetzt laden von 2 Seiten statt 1, und es ist noch ein bisschen chaotisch. Jedoch, es funktioniert.
InformationsquelleAutor Ryan Smyth
hatte das gleiche problem mit den fehlenden log-out-button und fand via google diesen Hinweis-den anderen Tag:
öffnen https://developers.facebook.com/?ref=pf (sogenannte "facebook-Entwickler-Website") und dort finden Sie die üblichen log-in/out-Taste erneut.
fragt mich nicht, wie es funktioniert und warum es funktioniert, ich folgte nur den Anweisungen, die ich fand mich, und es war für mich arbeiten
Glück, die besten Wünsche
InformationsquelleAutor not on fb very often