Dateien mühelos zu DigitalOcean Spaces exportieren
Heute stellen wir den neuen Robot /digitalocean/store vor, mit dem Sie Ihre Assembly-Ergebnisse zu DigitalOceans Spaces Object Storage exportieren können. Damit kommt eine weitere Option zu den Export-Anbietern hinzu, die wir bereits unterstützen, darunter Amazon S3, Rackspace Cloud Files und Dropbox. Die vollständige Liste finden Sie in unserer Dokumentation.
Der /digitalocean/store-Robot
Mit dem Robot /digitalocean/store laden Sie Ihre Dateien oder Assembly-Ergebnisse zur lang- und kurzfristigen Speicherung zu DigitalOcean Spaces hoch. Ihre Dateien können öffentlich verfügbar oder privat für Ihr Konto sein.

Spaces basiert auf dem Open-Source-Speichersystem Ceph und unterstützt die meisten Funktionen, die Amazon S3 bietet. Wenn Sie also bereits unseren Robot /s3/store verwenden, wird Ihnen die API sehr vertraut vorkommen.
In diesem Blogpost führen wir Sie durch die Einrichtung eines DigitalOcean-Spaces-Kontos, das Transkodieren Ihrer Dateien und den Export der Ergebnisse in Ihr Spaces-Konto. Wenn Sie sich nur die API zu diesem Robot ansehen und selbst damit spielen möchten, werfen Sie einen Blick in die Dokumentation und auf die folgenden Assembly Instructions als Beispiel:
{
"steps": {
":original": {
"robot": "/upload/handle"
},
"store": {
"use": ":original",
"robot": "/digitalocean/store",
"credentials": "spaces-store-demo",
"space": "spaces-store-demo",
"acl": "public-read"
}
}
}
DigitalOcean Spaces einrichten
Im ersten Schritt erstellen Sie ein DigitalOcean-Konto, falls Sie das noch nicht getan haben. Legen Sie unter digitalocean.com los.
Wechseln Sie anschließend zum Tab Spaces, um einen neuen Space anzulegen, den wir
spaces-store-demo nennen. Wählen Sie die Rechenzentrumsregion, die dem Ort am nächsten liegt, von dem
aus Sie die Daten abrufen. Hier haben wir fra1 / Frankfurt gewählt.

Nach der Erstellung haben wir ein leeres Spaces-Konto, in das wir Dateien exportieren können:

Damit unser Robot mit der DigitalOcean Spaces API kommunizieren kann, müssen wir außerdem ein Paar Spaces-Zugriffsschlüssel erstellen. Das können Sie im Bereich API Ihres DigitalOcean-Kontos tun. Lassen Sie diesen Tab am besten geöffnet, denn wir benötigen den öffentlichen und den privaten geheimen Schlüssel in den folgenden Schritten. Geben Sie diese Zugangsdaten niemals an Personen weiter, denen Sie keinen Schreibzugriff auf Ihren Space gewähren möchten.

Template-Zugangsdaten erstellen
Mit DigitalOcean sind wir vorerst fertig. Wechseln wir also zu transloadit.com und erstellen ein kostenloses Konto! Aktuelle Tarife und das enthaltene Encoding-Volumen finden Sie auf unserer Preisseite.
Für mehr Sicherheit und eine einfachere Wiederverwendung bietet Transloadit Ihnen an, Template-Zugangsdaten
anzulegen und die Secrets für Sie zu speichern. Sobald Sie angemeldet sind, öffnen Sie Ihr Konto und wählen
Template-Zugangsdaten. Wählen Sie den Drittanbieterdienst Digital Ocean Spaces und geben Sie Ihre
Space-Zugangsdaten wie folgt ein; ersetzen Sie dabei Space-Name, Region, Schlüssel-ID und
geheimer Zugriffsschlüssel entsprechend:

Speichern Sie, und fertig! Den Namen der Template-Zugangsdaten, in
diesem Fall spaces-store-demo, verwenden wir im nächsten Schritt.
Gesichter erkennen
Nun endlich zum Übermitteln einiger Dateien an eine neue Assembly! Unser Beispiel verwendet die Robots /image/facedetect und /digitalocean/store. Am Ende können Sie Bilddateien hochladen, in denen alle menschlichen Gesichter erkannt und separat in Ihren DigitalOcean Space hochgeladen werden.
Für diese Anleitung verwenden wir das Kommandozeilen-Tool curl(1), das
höchstwahrscheinlich bereits auf Ihrem Computer installiert ist, um mit der Transloadit API zu
interagieren. Wenn Sie Windows nutzen, lesen Sie die offizielle
Anleitung für curl unter Windows.
Zunächst noch ein Vorbereitungsschritt: Öffnen Sie die API-Einstellungen in Ihrem Transloadit-Konto und kopieren Sie bitte den Auth Key.

(Keine Sorge, wir haben unser Secret nach diesem Screenshot neu generiert 😄)
Erstellen Sie anschließend eine Datei mit diesen Assembly Instructions, die wir
params.json nennen. Ersetzen Sie auth.key durch Ihren persönlichen Auth Key.
{
"auth": {
"key": "YOUR_AUTH_KEY"
},
"steps": {
"face-detect": {
"use": ":original",
"robot": "/image/facedetect",
"crop": true,
"faces": "each"
},
"store": {
"use": "face-detect",
"robot": "/digitalocean/store",
"credentials": "spaces-store-demo",
"space": "spaces-store-demo",
"acl": "public-read"
}
}
}
Die Assembly besteht aus zwei Steps:
- Gesichter erkennen und jedes erkannte Gesicht als zugeschnittenes Bild extrahieren
- Die extrahierten Gesichter mit den Berechtigungen
public-readin Ihren DigitalOcean Space hochladen, damit die Dateien öffentlich zugänglich sind
Die Assembly testen
Jetzt fehlt nur noch ein Teil: die ganze Maschinerie mit einem einzigen Befehl in Gang zu setzen!
Zum Testen Ihrer Assembly benötigen Sie ein Bild mit einigen Gesichtern. Falls Sie keines zur Hand haben, können Sie dieses hier verwenden:

Führen Sie in Ihrem Terminal den folgenden Befehl mit curl(1) aus, und zwar in demselben
Ordner, in dem params.json und das Quellbild (hier group.jpg) liegen. Leiten Sie die Ausgabe an
json_pp(1) weiter, um eine schön
formatierte JSON-Ausgabe zu erhalten.
curl \
-s \
-XPOST \
-F params="$(< params.json)" \
-F original=@group.jpg \
https://api2.transloadit.com/assemblies \
| json_pp
Falls Sie neugierig sind, warum der Befehl
curl(1)so aussieht, wie er aussieht:
-sweistcurl(1)an, still zu sein, sodass wir nur den HTTP-Response-Body sehen-XPOST, um daraus eine POST-Anfrage zu machen-F ...Transloadit verwendet HTTP-Multipart-Formposts, damit der Client sowohl die Assembly Instructions als auch die Dateien in einer einzigen Anfrage übermitteln kann (und damit unsere API auch mit ganz normalen<form>s eingebunden werden kann). Hier verwenden wir-F, um sowohlparams.jsonals auchgroup.jpgzu übermitteln.
Öffnen Sie in Ihrem Transloadit-Konto die Seite Assemblies und klicken Sie auf die oberste Zeile, um die Ergebnisse zu sehen!

Wie Sie sehen, wurden in unserem Fall zwei Gesichter erkannt. Klicken Sie auf die Schaltflächen OPEN neben den einzelnen Ergebnissen, um die zugeschnittenen Gesichter zu sehen, ausgeliefert aus Ihrem neu erstellten DigitalOcean Space!


Ende
Das war's! Wir hoffen, dass Ihnen dieser Blogpost gefallen hat und Sie sich schon auf den nächsten freuen. Und wenn Sie das ausprobieren möchten, erstellen Sie noch heute ein kostenloses Transloadit-Konto!
