Dateien von Webservern importieren
🤖/http/import importiert jede Datei, die über eine Web-URL öffentlich verfügbar ist, in Transloadit.

Das Ergebnis, das dieser Robot liefert, enthält in seinen Metadaten das Feld import_url, das auf die URL verweist, von der es importiert wurde. Auch weitere Konvertierungsergebnisse, die diese Datei verwenden, enthalten das Feld import_url. So können Sie Konvertierungsergebnisse der ursprünglich verwendeten Import-URL zuordnen.
Dieser Robot kann Links zu Dateien bei den folgenden Diensten interpretieren:
- Dropbox
- Google Drive
- Google Docs
- OneDrive
Statt die HTML-Seite mit der Dateivorschau herunterzuladen, wird die eigentliche Datei importiert.
Hinweis
Anwendungsbeispiel
Ein Bild von einer bestimmten URL importieren:
{
"steps": {
"imported": {
"robot": "/http/import",
"url": "https://demos.transloadit.com/inputs/chameleon.jpg"
}
}
}Parameter
interpolateboolean | Record<string, boolean>Steuert, ob einzelne Robot-Anweisungsfelder Assembly Variables interpolieren.
Standardmäßig interpolieren die meisten Robot-Anweisungsfelder Assembly Variables. Mit dem Wert
falsebehandeln Sie alle Anweisungsfelder als Literaltext. Wenn Sie stattdessen einen einzelnen Feldpfad auffalsesetzen, wird nur dieses Feld als Literaltext behandelt. Bei Robot-spezifischen Feldern, die standardmäßig als Literaltext behandelt werden, aktivieren Sie die Interpolation wieder, indem Sie hierfürtruefestlegen oder für den jeweiligen Feldpfad den Werttrueverwenden.Verwenden Sie Feldnamen wie
pathoder für verschachtelte Objekte Punktpfade wieffmpeg.vfals Pfadangabe.output_metaRecord<string, boolean> | boolean | Array<string>Damit können Sie eine Reihe von Metadaten festlegen, deren Berechnung mehr CPU-Ressourcen beansprucht. Sie sind daher standardmäßig deaktiviert, damit Ihre Assemblies schnell verarbeitet werden.
Für Bilder können Sie diesem Objekt den Eintrag
"has_transparency": truehinzufügen, um zu ermitteln, ob das Bild transparente Bereiche enthält. Mit dem Eintrag"dominant_colors": truekönnen Sie außerdem ein Array mit hexadezimalen Farbcodes aus dem Bild extrahieren.Für Bilder können Sie auch den Eintrag
"blurhash": truehinzufügen, um einen BlurHash zu extrahieren – eine kompakte Darstellung eines Platzhalters für das Bild, mit der Sie eine unscharfe Vorschau anzeigen können, während das vollständige Bild geladen wird.Für Videos können Sie den Parameter
"colorspace": truehinzufügen, um den Farbraum des Ausgabevideos zu extrahieren.Für Videos können Sie außerdem den Eintrag
"interlaced": truehinzufügen, um zu erkennen, ob das Video im Zeilensprungverfahren vorliegt. Dazu wird die ressourcenschonende ffprobe-Optionfield_ordermit einem begrenzten Stichprobendurchlauf mithilfe vonidetüber die ersten Frames der Quelle kombiniert. Die Ergebnisseinterlacedundfield_ordersowie das Diagnoseobjektinterlace_detectionwerden dabei unterfile.metaausgegeben. Dies ist rechenintensiv und wird entsprechend abgerechnet.Für Audio können Sie den Eintrag
"mean_volume": truehinzufügen, um einen einzelnen Wert für die durchschnittliche Lautstärke der Audiodatei zu erhalten.Sie können diesen Parameter auch auf
falsesetzen, um die Metadatenextraktion zu überspringen und das Transcoding zu beschleunigen.resultboolean(Standard:false)Ob die Ergebnisse dieses Steps im Assembly Status JSON enthalten sein sollen
queuebatchWenn Sie die Queue auf „batch“ setzen, wird die Priorität der Jobs für diesen Step manuell herabgestuft. So vermeiden Sie, Priority Job Slots für Jobs zu belegen, die keine Wartezeit von null in der Queue benötigen.
force_acceptboolean(Standard:false)Erzwingt, dass ein Robot einen Dateityp akzeptiert, den er sonst ignorieren würde.
Standardmäßig ignorieren Robots Dateien, deren Typ sie nicht kennen. 🤖/video/encode ignoriert beispielsweise problemlos Eingabebilder.
Wenn Sie den Parameter
force_acceptauftruesetzen, können Sie erzwingen, dass Robots alle übergebenen Dateien akzeptieren. Dies führt in der Regel zu Fehlern und sollte nur zur Fehlersuche oder zur Behandlung von Grenzfällen verwendet werden.ignore_errorsboolean | Array<meta | import | execute>(Standard:[])Fehler in bestimmten Verarbeitungsphasen ignorieren.
Wenn Sie diesen Wert auf
["meta"]setzen, ignoriert der Robot Fehler bei der Metadatenextraktion.Wenn Sie diesen Wert auf
["execute"]setzen, ignoriert der Robot Fehler während der Hauptausführungsphase.Wenn Sie diesen Wert auf
["import"]setzen, ignoriert der Robot Fehler beim Importieren der Quelldatei. Die Phase"import"ist nur für importierende Robots verfügbar.Wenn Sie diesen Wert auf
truesetzen, entspricht dies["meta", "import", "execute"]und Fehler in allen drei Phasen werden ignoriert.force_namestring | Array<string> | null(Standard:null)Benutzerdefinierter Name für die importierte Datei bzw. die importierten Dateien. Standardmäßig werden die Dateinamen von der Quelle abgeleitet.
import_on_errorsArray<meta>(Standard:[])Wenn Sie dies auf
["meta"]setzen, wird die Datei auch bei Fehlern während der Metadatenextraktion importiert. Ähnlich verhält es sich mit dem Parameterignore_errors: Der Fehler wird ebenfalls ignoriert und der Robot wird nicht angehalten, die Datei wird jedoch nicht importiert.url— erforderlichstring | Array<string>Die URL, unter der die zu importierende Datei abgerufen werden kann.
Sie können auch ein Array mit URLs oder eine durch
|getrennte Zeichenfolge mit URLs angeben, um mehrere Dateien gleichzeitig zu importieren. Beachten Sie hierzu auch den Parameterurl_delimiter.url_delimiterstring(Standard:"|")Gibt das Trennzeichen an, mit dem die URLs im Wert des Parameters
urlaufgeteilt werden.headersArray<string> | Array<Record<string, string>> | string(Standard:[])Benutzerdefinierte Header, die beim Dateiimport gesendet werden.
Standardmäßig ist dies ein leeres Array, sodass außer den erforderlichen Headern (z. B. Host) keine zusätzlichen Header gesendet werden.
Header können wie folgt angegeben werden:
- Ein Array aus Zeichenfolgen im Format „Header-Name: value“
- Ein Array aus Objekten mit Header-Namen als Schlüssel und den zugehörigen Werten
- Eine JSON-Zeichenfolge, die als Objekt geparst wird
Derselbe Wert
headerswird mit jeder URL in diesem/http/importStep gesendet. Wennurlein Array ist, wirdheadersden URLs nicht anhand des Array-Index zugeordnet. Verwenden Sie separate/http/importSteps, wenn verschiedene URLs unterschiedliche Header benötigen.fail_fastboolean(Standard:false)Deaktiviert den internen Retry-Mechanismus und lässt den Vorgang sofort fehlschlagen, wenn eine Ressource nicht importiert werden kann. Dies kann für leistungskritische Anwendungen nützlich sein.
max_file_sizestring | numberMaximal zulässige Größe in Byte für jede importierte Datei. Meldet der Remoteserver eine größere Datei, wird der Import abgelehnt, bevor der Download beginnt. Meldet der Remoteserver die Größe nicht im Voraus, wird der Download abgebrochen, sobald dieser Grenzwert überschritten wird.
return_file_stubsboolean(Standard:false)Wenn Sie dies auf
truesetzen, importiert der Robot die eigentlichen Dateien noch nicht, sondern gibt stattdessen einen leeren Datei-Stub mit einer URL zurück, über die nachfolgende Robots die Datei importieren können. Dies ist nützlich, wenn nachfolgende Steps mehr Kontrolle über den Importvorgang benötigen, beispielsweise wenn 🤖/video/ondemand zum Einsatz kommt. Dieser Parameter sollte nur festgelegt werden, wenn alle nachfolgenden Steps Robots verwenden, die Datei-Stubs unterstützen.rangestring | Array<string>Ermöglicht die Angabe eines oder mehrerer Bytebereiche, die aus der Datei importiert werden sollen. Damit dies funktioniert, muss der Server Bereichsanfragen unterstützen.
Einzelner Bereich: Verwenden Sie eine Zeichenfolge wie
"0-99", um die Bytes von 0 bis 99 zu importieren (die ersten 100 Bytes).Mehrere Bereiche: Verwenden Sie ein Array wie
["0-99", "200-299"], um mehrere separate Bereiche zu importieren. Die resultierende Datei enthält alle angeforderten Bereiche zusammengefügt. Lücken zwischen nicht zusammenhängenden Bereichen werden mit Null-Bytes (\0) gefüllt.Bereichsformate:
"0-99": Bytes von 0 bis einschließlich 99"100-199": Bytes von 100 bis einschließlich 199"-100": Die letzten 100 Bytes der Datei
Wichtige Hinweise:
- Der Server muss HTTP-Bereichsanfragen unterstützen und mit 206 Partial Content antworten
- Unterstützt der Server keine Bereichsanfragen, wird stattdessen die gesamte Datei importiert
- Sich überschneidende Bereiche sind zulässig und werden wie angefordert einbezogen
- Die Größe der resultierenden Datei entspricht der höchsten angeforderten Byteposition; Lücken werden mit Null-Bytes gefüllt
Demos
Verwandte Blogbeiträge
- Launching audio encode Robot & exciting new updates (English)
- Enhancements: multi-file import & uk rackspace support (English)
- Addressing elevated queue times & ensuring reliability (English)
- Launching Assembly Notification for enhanced workflows (English)
- API & jQuery SDK 2.3.0 enhancements announced (English)
- Introducing our new virus scanning Robot for safer uploads (English)
- New pricing model for future Transloadit customers (English)
- Transloadit launches Turbo Mode for faster video encoding (English)
- Easily burn subtitles into videos with our new Robot (English)
- Creating an Einstein quote generator with Transloadit (English)
- Tutorial: using /video/merge to develop video slideshows (English)
- No-code real-time video uploading with Bubble & Transloadit (English)
- Let's Build: spinning record GIF generator (English)
- Convert Markdown files to HTML or PDF in seconds (English)
- Enhancing /http/import Robot with fail fast option (English)
- Let's Build: video from album art with Transloadit (English)
- Celebrating transloadit’s 2021 milestones and progress (English)
- Build a Reddit video subtitling bot with Transloadit (English)
- Let's Build: music card generator with Transloadit (English)