S3 Upload

Speichert Payload CMS Uploads in Amazon S3 anstatt im lokalen Dateisystem und überträgt Originaldatei sowie alle Bildgrößen-Varianten.

Community 70 180/Wo. MIT v2.1.1

Installation

pnpm add payload-s3-upload

Über

Dieses Plugin speichert Dateien aus Payload CMS Upload-Collections in Amazon S3 anstatt im lokalen Dateisystem. Es ist für Payload 1.x geschrieben und nutzt den offiziellen AWS SDK v3 Client `@aws-sdk/client-s3`. Die S3Client-Instanz kann entweder injiziert oder aus einer S3ClientConfig durch das Plugin erzeugt werden. Die Konfiguration erfolgt pro Upload-Collection über einen `s3`-Block innerhalb der `upload`-Definition. Dort werden `bucket`, ein optionaler `prefix` und ein `commandInput`-Objekt angegeben. Der `prefix` ist ein statischer String oder eine Funktion, die das Dokument als Argument erhält und dynamische S3-Key-Pfade ermöglicht. Eigenschaften in `commandInput` werden an PutObjectCommandInput weitergereicht und können selbst Funktionen sein, die zur Upload-Zeit ausgewertet werden, etwa für ACL oder Metadaten. Ein `beforeChange`-Hook lädt die Originaldatei und alle generierten Bildgrößen-Varianten über PutObjectCommand nach S3 hoch. Ein `afterDelete`-Hook entfernt dieselben Objekte bei Löschung eines Dokuments über DeleteObjectCommand. Der `s3`-Block wird vor der Validierung durch Payload aus der Collection-Config entfernt, damit die strikte Upload-Validierung ihn nicht ablehnt. Das Plugin erzeugt keine öffentlichen URLs. Die Zuordnung von S3-URLs zu Dateien und Bildgrößen-Varianten bleibt benutzerdefinierten afterRead-Hooks oder berechneten `url`-Feldern überlassen.

Paketinformationen

Paketname
payload-s3-upload
Neueste Version
2.1.1
Entpackte Größe
21 kB
Lizenz
MIT
Wöchentliche Downloads
180
Zuletzt veröffentlicht
16. Mai 2023

Ähnliche Plugins

Mehr in Storage