Von Uploadcare zu Transloadit migrieren
Uploadcare vereint Uploads, CDN-Auslieferung, Dateigruppen und URL-Operationen. Transloadit trennt diese Belange in Robots für Upload und Import, Verarbeitungs-Robots, Export-Robots und optionale CDN-Auslieferung. Erfassen Sie die von Ihnen genutzten Operationen und ordnen Sie unterstützte Verarbeitungsaufgaben den Steps in einem Transloadit Template zu; dies ist kein Eins-zu-eins-Ersatz für jede Uploadcare-Funktion.
Migrationsübersicht
| Uploadcare-Konzept | Transloadit-Entsprechung |
|---|---|
| Dateiuploader | Uppy mit Transloadit oder ein anderes SDK |
| CDN-Operations-URL | Template-Steps oder Smart CDN mit kompatiblen Robots und einem abschließenden Step /file/serve |
| Größenänderung/Zuschnitt von Bildern | 🤖/image/resize |
| Bildkomprimierung | 🤖/image/optimize |
| Video-Encoding | 🤖/video/encode |
| Dateigruppen | Verarbeiten Sie mehrere Eingabedateien in einer Assembly; behalten Sie dauerhafte Gruppen-IDs und deren Reihenfolge in Ihrer Anwendung bei |
| Storage | 🤖/s3/store oder ein anderer Export-Robot |
| Webhooks | Assembly Notifications |
Verwenden Sie Step-Abhängigkeiten, um Dateien zwischen Verarbeitungsaufgaben zu leiten, nicht um dauerhafte Datensätze für Dateigruppen zu ersetzen. Signieren Sie Smart-CDN-URLs in Ihrem Backend und verwenden Sie ein separates, kompatibles Template für die On-Demand-Auslieferung.
Das Upload-Widget ersetzen
Verwenden Sie für Uploads im Browser Uppy mit dem Transloadit-Plugin. Uppy bietet Ihnen eine Dateiauswahl, eine Drag-and-drop-Oberfläche, fortsetzbare Uploads, Remote-Quellen und eine direkte Transloadit-Integration.
Ein typischer Uploadcare-Ablauf, bei dem Benutzer ein Bild hochladen und transformierte CDN-URLs erhalten, wird zu:
- Der Browser führt den Upload über Uppy durch und referenziert ein gespeichertes Transloadit Template.
- Das Template erstellt alle Varianten, die Ihre App benötigt.
- Transloadit benachrichtigt Ihr Backend mit den Ergebnis-URLs.
- Ihr Backend speichert diese URLs in Ihrer Datenbank.
Konfigurieren Sie notify_url in der signierten Assembly-Anfrage und prüfen Sie die Signaturen eingehender Notifications.
Aktivieren Sie für den Abschluss auf Browserseite in Uppy waitForEncoding; standardmäßig wird nur auf den Upload gewartet.
Beispiel-Template
Dieses Template nimmt einen Bild-Upload entgegen, erstellt einen quadratischen WebP-Avatar, optimiert
sowohl das Original als auch den Avatar und speichert die optimierten Dateien auf S3. Die Optimierung
hat keinen Formatparameter und gibt, wenn progressive wie hier deaktiviert bleibt, das Original zurück,
falls die optimierte Datei größer ist. Wenn Sie progressive aktivieren, kann ein Optimierungsergebnis auch
dann beibehalten werden, wenn es größer ist:
{
"steps": {
":original": {
"robot": "/upload/handle"
},
"avatar": {
"use": ":original",
"robot": "/image/resize",
"width": 512,
"height": 512,
"resize_strategy": "fillcrop",
"format": "webp"
},
"optimized_original": {
"use": ":original",
"robot": "/image/optimize",
"result": true
},
"optimized_avatar": {
"use": "avatar",
"robot": "/image/optimize",
"result": true
},
"exported": {
"use": ["optimized_original", "optimized_avatar"],
"robot": "/s3/store",
"credentials": "YOUR_AWS_CREDENTIALS",
"path": "uploads/${unique_prefix}/${file.url_name}",
"url_prefix": "https://cdn.example.com/",
"acl": "bucket-default"
}
}
}
Richten Sie Zugangsdaten von Drittanbietern für S3 ein und konfigurieren Sie Ihr CDN
so, dass es den Bucket-Root mit Lesezugriff ausliefert. url_prefix erstellt kein CDN und gewährt keinen Zugriff.
acl: "bucket-default" sendet keine Objekt-ACL; konfigurieren Sie den Zugriff über
Ihre Bucket-Policy und den Origin-Zugriff Ihres CDN. Lesen Sie nach ASSEMBLY_COMPLETED das Original aus
results.optimized_original und den Avatar aus results.optimized_avatar. Speichern Sie dauerhaft nur Einträge
mit is_temp_url: false: Der Export aktualisiert die URLs des erzeugenden Steps. Temporäre Transloadit-URLs
laufen nach 24 Stunden ab; siehe Speichern von Konvertierungsergebnissen.
Vorhandene Uploadcare-Dateien importieren
Wenn Sie bereits Uploadcare-CDN-URLs in Ihrer Datenbank haben, importieren Sie diese mit 🤖/http/import:
{
"steps": {
"imported": {
"robot": "/http/import",
"url": "${fields.uploadcare_url}"
},
"preview": {
"use": "imported",
"robot": "/file/preview",
"result": true
},
"exported": {
"use": ["imported", "preview"],
"robot": "/s3/store",
"credentials": "YOUR_AWS_CREDENTIALS",
"path": "uploadcare-import/${unique_prefix}/${file.url_name}",
"acl": "bucket-default"
}
}
}
Der Vorschau-Step verwendet 🤖/file/preview (English) (Beta); er gibt möglicherweise ein generisches
Dateityp-Symbol zurück, wenn kein Thumbnail des Inhalts verfügbar ist. Wählen Sie autorisierte Werte für uploadcare_url
in Ihrem Backend aus. Beim Import einer transformierten CDN-URL wird diese Variante kopiert, nicht zwangsläufig das Original.
Sie können nur referenzierte Dateien nachträglich übertragen oder ein Array autorisierter URLs an /http/import übergeben,
um einen begrenzten Batch zu verarbeiten. Führen Sie eine Zuordnung von alten IDs zu neuen Speicherorten und prüfen Sie den
Zugriff auf die Auslieferung sowie die Ausgabequalität, bevor Sie die Lesezugriffe umstellen. Dieses Import-Template gibt
exportierte Dateien unter results.imported und results.preview zurück. Private S3-Objekte
erfordern einen autorisierten Download oder Ihr konfiguriertes CDN.
Checkliste
- Ersetzen Sie die Verwendung des Uploadcare-Widgets durch Uppy und das Transloadit-Plugin.
- Ordnen Sie die von Ihnen genutzten CDN-Operationen unterstützten Template-Steps zu.
- Exportieren Sie dauerhafte Ergebnisse zu Ihrem Storage-Anbieter.
- Speichern Sie die exportierten Storage-URLs aus Assembly Notifications.
- Übertragen Sie vorhandene Uploadcare-CDN-URLs nachträglich mit
/http/import. - Behalten Sie alte URLs als Fallback bei, bis für alle wichtigen Assets Transloadit-Ergebnisse vorliegen.