Ich optimiere eine Seite, die FB-Authentifikation und Zugriffstoken verwendet hat, für eine Weile, um mit der Vernachlässigung von offline_access fertig zu werden und insbesondere fb_exchange_token, um Token mit längerer Dauer für die Benutzer der Site zu erhalten. Es scheint zu funktionieren, aber ich habe ein paar Fragen. Mein Ansatz ist:Re offline_access deprecation: Wann die fb_exchange_token Sache zu tun?
ich der Benutzer durch die üblichen Server-Seite angemeldet zurück und nach vorne Verfahren schließlich mir einen gültigen Zugriffstoken für den Benutzer zu geben. Dies funktioniert gut und scheint etwa 5300 Sekunden lang gültig zu sein, wie die Standard-/Original-Tokens.
Ich mache dann sofort den fb_exchange_token Aufruf; das gelingt und gibt mir ein neues access_token, das für ein paar Monate gut ist. Dies ist das Token, das meine Site für die zukünftige Verwendung speichert, wenn sie im Namen des Benutzers Aufgaben ausführt.
Das macht Sinn, oder? Es scheint ein wenig überflüssig zu sein, einen Anruf nach dem anderen zu machen, aber es bringt mir das Token mit der verlängerten Lebensdauer, was ich will. Ich nehme an, ich könnte den originalen Token so lange benutzen wie er ist und mich nicht um den Austausch kümmern, bis der ursprüngliche Token abläuft, aber (a) es scheint so, als könnte ich den erweiterten Token gleich von Anfang an benutzen und (b) Es ist mir nicht klar, dass ein abgelaufener Token gegen einen Token mit längerer Dauer getauscht werden kann.
Also: Sieht jemand Probleme mit diesem Ansatz? Vielen Dank!
Richtig. Aber wenn ich sicherstellen kann, dass der Benutzer sich irgendwann wieder einloggen muss, bevor das erweiterte Token abläuft, generiert er ein neues 5300-Sekunden-Token, das wiederum gegen ein anderes erweitertes Token ausgetauscht wird. Etc., usw., usw. Ich versuche nicht wirklich "offline" Sachen zu machen; Ich möchte nur, dass das Token nicht abläuft, während der Benutzer angemeldet ist und die Site verwendet. Und selbst wenn sie irgendwie über die Dauer des erweiterten Tokens hinaus angemeldet bleiben, habe ich immer noch den alten Code, um die ursprünglichen Tokens zu aktualisieren. Trotzdem danke! –
Danke @DMCS für diesen FAQ-Link. So scheint es [die Dokumente] (https://developers.facebook.com/roadmap/offline-access-removal/) sind nicht nur verwirrend sondern auch falsch, wie ich _calling dies mehrmals am selben Tag nur in Der erste Anruf verlängert die Ablaufzeit_, was bedeutet, dass Sie sich einmal pro Tag verlängern können. IMO diese Änderung wird keine gute Erfahrung für mobile Clients liefern ... –