Entschuldigung, falls dies bereits diskutiert wurde, aber steht die Unterstützung für Oneboxing von IGTV-Links auf der Roadmap?
Wenn ich versuche, einen IGTV-Link zu verwenden, der so aussieht wie https://www.instagram.com/tv/ID/, lautet die Antwort ähnlich wie in diesem Thema beschrieben:
Ein IGTV-Link würde derzeit über den generischen Oneboxer geleitet, was (wahrscheinlich) für die ersten paar Anfragen von einer beliebigen Seite funktionieren würde. Nach einer geringen Anzahl von Anfragen wird Instagram diese Anfragen (wahrscheinlich) auf einen Login-Bildschirm umleiten, genau das, was @renato beobachtet.
Wie @renato anmerkt, ist die IG-Onebox-Engine nicht dafür eingerichtet, IGTV-artige Links zu verarbeiten. Ich habe gerade einen PR erstellt, um dies zu beheben:
Dadurch wird die IG-Onebox-Engine die IG-TV-URL über den offiziellen IG oEmbed-Endpunkt abrufen. Unter der Annahme, dass Sie einen Zugriffstoken konfiguriert haben, sollte die Onebox-URL-Anfrage nicht auf einen Login-Bildschirm umgeleitet werden.
(Der Onebox-PR erfordert ein Versions-Update für Onebox und anschließend eine Aktualisierung der Gemfile-Datei im Discourse-Kern.)
Nur ein Gedanke: Könnten wir das zurückgegebene og:video (das secure_url, type, width und height enthält) nutzen, um einen Video-Player anzuzeigen, ähnlich wie im generic engine?
Wir nutzen den Instagram oEmbed-API-Endpunkt, der weder den Medientyp, noch die URL zur Videodatei oder andere nützliche Informationen zurückgibt, die es uns ermöglichen würden, eine Onebox mit einem eingebetteten Player zu erstellen.
Zwar enthält der direkte Zugriff auf die Seite diese Metadaten, doch scheint ein nicht-authentifizierter Zugriff mehr als nur wenige Male einen Zustand auf der Gegenseite auszulösen, der dann eine Authentifizierung erfordert. Deshalb verweist der Link in deinem ersten Beitrag auf eine Anmeldeseite.
Was die Onebox-Funktionalität angeht, scheinen wir derzeit bei IGTV-Links ziemlich eingeschränkt zu sein.
Über die oEmbed-API wird ein html-Attribut zurückgegeben. Ich habe gesehen, dass es eine alte Diskussion gibt, die vorschlägt, dieses zurückgegebene html zu verwenden, aber das führt letztlich zur aktuellen Lösung.
Ich verstehe, dass der aktuelle Ansatz sauberer und sicherer ist, daher ist es sinnvoll, ihn im Core zu belassen.
Das ist derzeit nichts, was ich wirklich brauche, aber falls ich es doch einmal benötige, wäre ein benutzerdefiniertes Plugin für die Verwendung dieser „offiziellen
priority kann helfen zu steuern, welche Engines bestimmte URLs abgleichen.
Beachten Sie auch den Ansatz, den RedditMediaOnebox verfolgt. Er versucht, benutzerdefiniertes HTML zurückzugeben, fällt aber auf eine generische Onebox zurück, wenn er nicht weiß, wie er dieses spezifische type-Ergebnis verarbeiten soll.