Mit den neuen API-Änderungen von instagram scheint es, dass es keinen Weg gibt, ein access_token zu erhalten, ohne irgendeine Art von Benutzerinteraktion zu haben. Die gesamte Dokumentation, die ich gefunden habe, besagt, dass die Anmeldung über eine Benutzerinteraktion ( Ссылка) obligatorisch ist ):
Server-seitiger (expliziter) Fluss
Schritt eins: Richten Sie Ihren Benutzer auf unsere Autorisierungs-URL
Ссылка Anmerkung: Sie können einen optionalen Bereichsparameter angeben, der angefordert wird zusätzliche Berechtigungen außerhalb des "Basis" -Bereichs Lernen mehr über den Umfang.
Hinweis: Sie können einen optionalen Zustandsparameter angeben, um a auszuführen Serverspezifischer Status Zum Beispiel können Sie dies zum Schutz verwenden gegen CSRF-Probleme.
An dieser Stelle präsentieren wir dem Benutzer einen Anmeldebildschirm und dann einen Bestätigungsbildschirm, um Ihrer App Zugriff auf ihr Instagram zu gewähren Daten.
Clientseitige (implizite) Authentifizierung
Schritt eins: Richten Sie Ihren Benutzer auf unsere Autorisierungs-URL
Ссылка An dieser Stelle präsentieren wir dem Benutzer einen Anmeldebildschirm und dann einen Bestätigungsbildschirm, auf dem sie der App Zugriff auf ihre App gewähren Instagram-Daten. Beachten Sie, dass im Gegensatz zum expliziten Flow der Antworttyp verwendet wird Hier ist "Token".
Mit einem access_token, das regelmäßig aktualisiert wird, ist es möglich, das Zugriffstoken ohne Benutzerinteraktion zu erhalten?
Ich versuche, meinen Feed auf meiner Website anzuzeigen, aber ich habe keinen anderen Weg gefunden als die Embed-Optionen, die sie nach der Änderung der API anbieten.
BEARBEITEN: Meine Frage wird als ein Betrüger von Instagram-OAuth-Zugriffstoken-Ablauf markiert für App , aber ich untersuche nicht den Ablauf (der nicht explizit in der IG-Dokumentation definiert ist). Ich möchte einen rein programmatischen Weg, um das Access_Token zu bekommen.
Sie können das Zugriffstoken auf Ihrem Server speichern. Solange es gültig ist, müssen Sie Ihre Benutzer nicht zur Anmeldung auffordern.
Beachten Sie, dass das Zugriffstoken ein Ablaufdatum hat. Also müssen Sie auch diesen Fall behandeln [d. H., Fordern Sie den Benutzer bei Ablauf erneut an, sich anzumelden und das neue Zugriffstoken abzurufen und zu speichern]
Hier in den Instagram-Entwickler-Dokumenten heißt es:
Inhaltsanzeige für persönliche Website. Wenn Sie ein Entwickler und Sie sind Möchtest du Instagram-Inhalte auf einer Website präsentieren, dann brauchst du das nicht um deine App zur Überprüfung einzureichen. Mit einem Client im Sandbox-Modus können Sie kann immer noch auf die letzten 20 Medien eines beliebigen Sandbox-Benutzers zugreifen das gewährt Ihnen die Erlaubnis.
Wenn Sie also bereits einen Kunden mit Instagram eingerichtet haben, sollten Sie in der Lage sein, weiterhin Ihre Posts aus der API zu holen, solange Sie sich im "Sandbox" -Modus befinden. Sie können nur Beiträge für Ihr eigenes Benutzerkonto oder für alle, die Ihre Sandbox-Berechtigung erhalten haben (maximal 10).
Wenn Sie noch kein Zugriffs-Token haben, können Sie etwas wie Oauth.io verwenden. (Es ist kostenlos.)
Ich habe dieses Problem auch. Ich nehme an, dass Sie ein Skript schreiben möchten, um die Dinge für Sie auszuführen.
Eine (eher lahme) Lösung wäre, Selen, Phantom JS, Headless Chrome oder eine andere ähnliche Technologie zu verwenden, um den Login-Bildschirm zu besuchen, um die Zugangsdaten einzugeben (Sicherheit aus dem Fenster zu werfen), bevor Sie den Code holen die folgende Weiterleitungs-URL ...
Es ist eine Schande, dass Instagram diese Art von nicht benutzerdefiniertem Konto nicht erlaubt.
Tags und Links javascript oauth instagram instagram-api