Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Interaktion mit Amazon Simple Storage Service mit Komponenten und Automatisierungen
Sie können verschiedene Amazon S3-Operationen von einer App Studio-App aus aufrufen. Sie könnten beispielsweise ein einfaches Admin-Panel erstellen, um Ihre Benutzer und Bestellungen zu verwalten und Ihre Medien von Amazon S3 aus anzuzeigen. Sie können zwar jeden Amazon S3-Vorgang mit der AWS Aktion Aufrufen aufrufen, es gibt jedoch vier spezielle Amazon S3-Aktionen, die Sie zu Automatisierungen in Ihrer App hinzufügen können, um allgemeine Operationen an Amazon S3-Buckets und -Objekten auszuführen. Die vier Aktionen und ihre Operationen lauten wie folgt:
Objekt platzieren: Verwendet den
Amazon S3 PutObjectVorgang, um ein Objekt zu einem Amazon S3-Bucket hinzuzufügen.Objekt abrufen: Verwendet den
Amazon S3 GetObjectVorgang, um ein Objekt aus einem Amazon S3-Bucket abzurufen.Objekte auflisten: Verwendet den
Amazon S3 ListObjectsVorgang, um Objekte in einem Amazon S3-Bucket aufzulisten.Objekt löschen: Verwendet den
Amazon S3 DeleteObjectVorgang, um ein Objekt aus einem Amazon S3-Bucket zu löschen.
Zusätzlich zu den Aktionen gibt es eine S3-Upload-Komponente, die Sie zu Seiten in Anwendungen hinzufügen können. Benutzer können diese Komponente verwenden, um eine hochzuladende Datei auszuwählen, und die Komponente ruft Amazon S3 PutObject auf, die Datei in den konfigurierten Bucket und Ordner hochzuladen. In diesem Tutorial wird diese Komponente anstelle der eigenständigen Automatisierungsaktion „Objekt platzieren“ verwendet. (Die eigenständige Aktion sollte in komplexeren Szenarien verwendet werden, die zusätzliche Logik oder Aktionen beinhalten, die vor oder nach dem Hochladen ausgeführt werden müssen.)
Voraussetzungen
In diesem Handbuch wird davon ausgegangen, dass Sie die folgenden Voraussetzungen erfüllt haben:
-
Es wurde ein Amazon S3-Bucket, eine IAM-Rolle und -Richtlinie sowie ein Amazon S3-Connector erstellt und konfiguriert, um Amazon S3 erfolgreich in App Studio zu integrieren. Um einen Connector zu erstellen, müssen Sie die Administratorrolle haben. Weitere Informationen finden Sie unter Stellen Sie eine Verbindung zu Amazon Simple Storage Service (Amazon S3) her.
Erstellen Sie eine leere Anwendung
Erstellen Sie eine leere Anwendung, die Sie in diesem Handbuch verwenden können, indem Sie die folgenden Schritte ausführen.
Um eine leere Anwendung zu erstellen
Wählen Sie im Navigationsbereich Meine Anwendungen aus.
Wählen Sie + App erstellen.
Geben Sie Ihrer Anwendung im Dialogfeld „App erstellen“ einen Namen, wählen Sie „Von vorne beginnen“ und dann „Weiter“.
Wählen Sie im Dialogfeld „Mit vorhandenen Daten verbinden“ die Option „Überspringen“, um die Anwendung zu erstellen.
Wählen Sie App bearbeiten, um zur Arbeitsfläche Ihrer neuen App zu gelangen, wo Sie Komponenten, Automatisierungen und Daten verwenden können, um das Aussehen und die Funktion Ihrer Anwendung zu konfigurieren.
Seiten erstellen
Erstellen Sie in Ihrer Anwendung drei Seiten, um Informationen zu sammeln oder anzuzeigen.
Um Seiten zu erstellen
Wählen Sie bei Bedarf oben auf der Arbeitsfläche den Tab Seiten aus.
In der linken Navigationsleiste befindet sich eine einzelne Seite, die mit Ihrer App erstellt wurde. Wähle + Zweimal hinzufügen, um zwei weitere Seiten zu erstellen. Im Navigationsbereich sollten insgesamt drei Seiten angezeigt werden.
Aktualisieren Sie den Namen der Seite Page1, indem Sie die folgenden Schritte ausführen:
Wählen Sie das Ellipsensymbol und dann Seiteneigenschaften aus.
Wählen Sie im Eigenschaftenmenü auf der rechten Seite das Stiftsymbol, um den Namen zu bearbeiten.
Geben Sie ein
FileListund drücken Sie die Eingabetaste.
Wiederholen Sie die vorherigen Schritte, um die zweite und dritte Seite wie folgt zu aktualisieren:
Benennen Sie Seite 2 um in.
UploadFileBenennen Sie Page3 um in.
FailUpload
Jetzt sollte Ihre App drei Seiten mit den Namen FileList UploadFile, und haben FailUpload, die im linken Seitenbereich angezeigt werden.
Als Nächstes erstellen und konfigurieren Sie die Automatisierungen, die mit Amazon S3 interagieren.
Erstellen und konfigurieren Sie Automatisierungen
Erstellen Sie die Automatisierungen Ihrer Anwendung, die mit Amazon S3 interagieren. Verwenden Sie die folgenden Verfahren, um die folgenden Automatisierungen zu erstellen:
Eine GetFiles-Automatisierung, die die Objekte in Ihrem Amazon S3-Bucket auflistet, die zum Füllen einer Tabellenkomponente verwendet werden.
Eine DeleteFile-Automatisierung, die ein Objekt aus Ihrem Amazon S3-Bucket löscht. Dies wird verwendet, um einer Tabellenkomponente eine Schaltfläche zum Löschen hinzuzufügen.
Eine ViewFile-Automatisierung, die ein Objekt aus Ihrem Amazon S3-Bucket abruft und anzeigt. Dies wird verwendet, um weitere Details zu einem einzelnen Objekt anzuzeigen, das aus einer Tabellenkomponente ausgewählt wurde.
Erstellen Sie eine GetFiles-Automatisierung
Erstellen Sie eine Automatisierung, die die Dateien in einem bestimmten Amazon S3-Bucket auflistet.
Wählen Sie oben auf der Arbeitsfläche die Registerkarte Automatisierungen aus.
Wähle + Automatisierung hinzufügen.
Wählen Sie im rechten Bereich „Eigenschaften“.
Aktualisieren Sie den Namen der Automatisierung, indem Sie auf das Stiftsymbol klicken. Geben Sie ein
getFilesund drücken Sie die Eingabetaste.Fügen Sie eine Aktion „Objekte auflisten“ hinzu, indem Sie die folgenden Schritte ausführen:
Wählen Sie im rechten Bereich Aktionen aus.
Wählen Sie „Objekte auflisten“, um eine Aktion hinzuzufügen. Die Aktion sollte benannt werden
ListObjects1.
Konfigurieren Sie die Aktion, indem Sie die folgenden Schritte ausführen:
Wählen Sie die Aktion auf der Arbeitsfläche aus, um das Eigenschaftenmenü auf der rechten Seite zu öffnen.
Wählen Sie für Connector den Amazon S3-Connector aus, den Sie anhand der Voraussetzungen erstellt haben.
Geben Sie für Konfiguration den folgenden Text ein und
bucket_nameersetzen Sie ihn durch den Bucket, den Sie in den Voraussetzungen erstellt haben:{ "Bucket": "bucket_name", "Prefix": "" }Anmerkung
Sie können das
PrefixFeld verwenden, um die Antwort auf Objekte zu beschränken, die mit der angegebenen Zeichenfolge beginnen.
Die Ausgabe dieser Automatisierung wird verwendet, um eine Tabellenkomponente mit Objekten aus Ihrem Amazon S3-Bucket zu füllen. Standardmäßig erstellen Automatisierungen jedoch keine Ausgaben. Konfigurieren Sie die Automatisierung so, dass eine Automatisierungsausgabe erstellt wird, indem Sie die folgenden Schritte ausführen:
Wählen Sie in der linken Navigationsleiste die GetFiles-Automatisierung aus.
Wählen Sie im Eigenschaftenmenü auf der rechten Seite unter Automationsausgabe die Option + Ausgabe hinzufügen.
Geben
{{results.ListObjects1.Contents}}Sie für Ausgabe den Wert ein. Dieser Ausdruck gibt den Inhalt der Aktion zurück und kann jetzt zum Füllen einer Tabellenkomponente verwendet werden.
Erstellen Sie eine DeleteFile-Automatisierung
Erstellen Sie eine Automatisierung, die ein Objekt aus einem angegebenen Amazon S3-Bucket löscht.
Wählen Sie im linken Bereich „Automatisierungen“ die Option + Hinzufügen.
Wähle + Automatisierung hinzufügen.
Wählen Sie im rechten Bereich „Eigenschaften“.
Aktualisieren Sie den Namen der Automatisierung, indem Sie auf das Stiftsymbol klicken. Geben Sie ein
deleteFileund drücken Sie die Eingabetaste.Fügen Sie einen Automatisierungsparameter hinzu, der verwendet wird, um Daten an eine Automatisierung zu übergeben, indem Sie die folgenden Schritte ausführen:
Wählen Sie im rechten Eigenschaftenmenü unter Automatisierungsparameter die Option + Hinzufügen.
Wählen Sie das Stiftsymbol, um den Automatisierungsparameter zu bearbeiten. Aktualisieren Sie den Parameternamen auf
fileNameund drücken Sie die Eingabetaste.
Fügen Sie eine Aktion „Objekt löschen“ hinzu, indem Sie die folgenden Schritte ausführen:
Wählen Sie im rechten Bereich Aktionen aus.
Wählen Sie Objekt löschen, um eine Aktion hinzuzufügen. Die Aktion sollte benannt werden
DeleteObject1.
Konfigurieren Sie die Aktion, indem Sie die folgenden Schritte ausführen:
Wählen Sie die Aktion auf der Arbeitsfläche aus, um das Eigenschaftenmenü auf der rechten Seite zu öffnen.
Wählen Sie für Connector den Amazon S3-Connector aus, den Sie anhand der Voraussetzungen erstellt haben.
Geben Sie für Konfiguration den folgenden Text ein und
bucket_nameersetzen Sie ihn durch den Bucket, den Sie in den Voraussetzungen erstellt haben:{ "Bucket": "bucket_name", "Key": params.fileName }
Erstellen Sie eine ViewFile-Automatisierung
Erstellen Sie eine Automatisierung, die ein einzelnes Objekt aus einem angegebenen Amazon S3-Bucket abruft. Später werden Sie diese Automatisierung mit einer Datei-Viewer-Komponente konfigurieren, um das Objekt anzuzeigen.
Wählen Sie im linken Bereich „Automatisierungen“ die Option + Hinzufügen.
Wähle + Automatisierung hinzufügen.
Wählen Sie im rechten Bereich „Eigenschaften“.
Aktualisieren Sie den Namen der Automatisierung, indem Sie auf das Stiftsymbol klicken. Geben Sie ein
viewFileund drücken Sie die Eingabetaste.Fügen Sie einen Automatisierungsparameter hinzu, der verwendet wird, um Daten an eine Automatisierung zu übergeben, indem Sie die folgenden Schritte ausführen:
Wählen Sie im rechten Eigenschaftenmenü unter Automatisierungsparameter die Option + Hinzufügen.
Wählen Sie das Stiftsymbol, um den Automatisierungsparameter zu bearbeiten. Aktualisieren Sie den Parameternamen auf
fileNameund drücken Sie die Eingabetaste.
Fügen Sie eine Aktion „Objekt abrufen“ hinzu, indem Sie die folgenden Schritte ausführen:
Wählen Sie im rechten Bereich Aktionen aus.
Wählen Sie Objekt abrufen, um eine Aktion hinzuzufügen. Die Aktion sollte benannt werden
GetObject1.
Konfigurieren Sie die Aktion, indem Sie die folgenden Schritte ausführen:
Wählen Sie die Aktion auf der Arbeitsfläche aus, um das Eigenschaftenmenü auf der rechten Seite zu öffnen.
Wählen Sie für Connector den Amazon S3-Connector aus, den Sie anhand der Voraussetzungen erstellt haben.
Geben Sie für Konfiguration den folgenden Text ein und
bucket_nameersetzen Sie ihn durch den Bucket, den Sie in den Voraussetzungen erstellt haben:{ "Bucket": "bucket_name", "Key": params.fileName }
Standardmäßig erstellen Automatisierungen keine Ausgaben. Konfigurieren Sie die Automatisierung so, dass eine Automatisierungsausgabe erstellt wird, indem Sie die folgenden Schritte ausführen:
Wählen Sie in der linken Navigationsleiste die ViewFile-Automatisierung aus.
Wählen Sie im rechten Eigenschaftenmenü unter Automationsausgabe die Option + Ausgabe hinzufügen.
Geben
{{results.GetObject1.Body.transformToWebStream()}}Sie für Ausgabe den Wert ein. Dieser Ausdruck gibt den Inhalt der Aktion zurück.Anmerkung
Sie können die Antwort von auf folgende
S3 GetObjectWeise lesen:transformToWebStream: Gibt einen Stream zurück, der verbraucht werden muss, um die Daten abzurufen. Wenn die Ausgabe als Automatisierungsausgabe verwendet wird, kümmert sich die Automatisierung darum, und die Ausgabe kann als Datenquelle einer Bild- oder PDF-Viewer-Komponente verwendet werden. Es kann auch als Eingabe für eine andere Operation verwendet werden, z.S3 PutObjectB.transformToString: Gibt die Rohdaten der Automatisierung zurück und sollte in einer JavaScript Aktion verwendet werden, wenn Ihre Dateien Textinhalte wie JSON-Daten enthalten. Muss abgewartet werden, zum Beispiel:await results.GetObject1.Body.transformToString();transformToByteArray: Gibt ein Array von 8-Bit-Ganzzahlen ohne Vorzeichen zurück. Diese Antwort dient dem Zweck eines Byte-Arrays, das das Speichern und Bearbeiten von Binärdaten ermöglicht. Muss abgewartet werden, zum Beispiel:await results.GetObject1.Body.transformToByteArray();
Als Nächstes fügen Sie Komponenten zu den Seiten hinzu, die Sie zuvor erstellt haben, und konfigurieren sie mit Ihren Automatisierungen, sodass Benutzer Ihre App zum Anzeigen und Löschen von Dateien verwenden können.
Seitenkomponenten hinzufügen und konfigurieren
Nachdem Sie die Automatisierungen erstellt haben, die die Geschäftslogik und Funktionalität Ihrer App definieren, erstellen Sie Komponenten und verbinden sie beide.
Fügen Sie Komponenten hinzu FileList angezeigten
Die FileList Seite, die Sie zuvor erstellt haben, wird verwendet, um eine Liste der Dateien im konfigurierten Amazon S3-Bucket sowie weitere Details zu allen Dateien anzuzeigen, die aus der Liste ausgewählt wurden. Um das zu tun, gehen Sie wie folgt vor:
Erstellen Sie eine Tabellenkomponente, um die Liste der Dateien anzuzeigen. Sie konfigurieren die Zeilen der Tabelle so, dass sie mit der Ausgabe der GetFiles-Automatisierung gefüllt werden, die Sie zuvor erstellt haben.
Erstellen Sie eine PDF-Viewer-Komponente, um eine einzelne PDF-Datei anzuzeigen. Sie konfigurieren die Komponente so, dass sie eine aus der Tabelle ausgewählte Datei anzeigt, und verwenden dabei die ViewFile-Automatisierung, die Sie zuvor erstellt haben, um die Datei aus Ihrem Bucket abzurufen.
Um Komponenten zum hinzuzufügen FileList angezeigten
Wählen Sie oben auf der Leinwand den Tab Seiten.
Wählen Sie im linken Seitenbereich die FileList Seite aus.
Suchen Sie auf der rechten Seite „Komponenten“ die Komponente „Tabelle“ und ziehen Sie sie in die Mitte der Arbeitsfläche.
Wählen Sie die Tabellenkomponente aus, die Sie gerade zur Seite hinzugefügt haben.
Wählen Sie im Eigenschaftenmenü auf der rechten Seite das Dropdownmenü Quelle und dann Automatisierung aus.
Wählen Sie das Drop-down-Menü Automatisierung und dann die GetFiles-Automatisierung aus. Die Tabelle verwendet die Ausgabe der GetFiles-Automatisierung als Inhalt.
-
Fügen Sie eine Spalte hinzu, die mit dem Namen der Datei gefüllt werden soll.
Wählen Sie im Eigenschaftenmenü auf der rechten Seite neben Spalten die Option + Hinzufügen.
Wählen Sie das Pfeilsymbol rechts neben der Spalte Column1, die gerade hinzugefügt wurde.
Benennen Sie die Spalte für die Spaltenbezeichnung in um.
FilenameGeben Sie für Wert
{{currentRow.Key}}ein.Wählen Sie das Pfeilsymbol oben im Bedienfeld, um zum Hauptbereich „Eigenschaften“ zurückzukehren.
-
Fügen Sie eine Tabellenaktion hinzu, um die Datei nacheinander zu löschen.
Wählen Sie im Eigenschaftenmenü auf der rechten Seite neben Aktionen die Option + Hinzufügen.
Benennen Sie unter Aktionen die Schaltfläche in um
Delete.Wählen Sie das Pfeilsymbol rechts neben der Aktion Löschen, die gerade umbenannt wurde.
Wählen Sie unter Bei Klick die Option + Aktion hinzufügen und dann Automatisierung aufrufen aus.
Wählen Sie die Aktion aus, die hinzugefügt wurde, um sie zu konfigurieren.
Für Aktionsname geben Sie
DeleteRecordein.Wählen Sie unter Automatisierung aufrufen die Option aus
deleteFile.Geben
{{currentRow.Key}}Sie in das Parameter-Textfeld ein.Geben Sie für Wert
{{currentRow.Key}}ein.
-
Wählen Sie im rechten Bereich Komponenten, um das Komponentenmenü anzuzeigen. Es gibt zwei Möglichkeiten, Dateien anzuzeigen:
Ein Bildbetrachter zum Anzeigen von Dateien mit der
.jpgErweiterung.png.jpeg,, oder.Eine PDF-Viewer-Komponente zum Anzeigen von PDF-Dateien.
In diesem Tutorial fügen Sie die PDF-Viewer-Komponente hinzu und konfigurieren sie.
-
Fügen Sie die PDF-Viewer-Komponente hinzu.
Suchen Sie auf der rechten Komponentenseite nach der PDF-Viewer-Komponente und ziehen Sie sie auf die Arbeitsfläche unter der Tabellenkomponente.
Wählen Sie die gerade hinzugefügte PDF-Viewer-Komponente aus.
Wählen Sie im Eigenschaftenmenü auf der rechten Seite das Dropdownmenü Quelle und dann Automatisierung aus.
Wählen Sie das Drop-down-Menü Automatisierung und wählen Sie die ViewFile-Automatisierung aus. Die Tabelle verwendet die Ausgabe der ViewFile-Automatisierung als Inhalt.
Geben
{{ui.table1.selectedRow["Filename"]}}Sie in das Parametertextfeld ein.Im rechten Bereich befindet sich auch ein Feld für den Dateinamen. Der Wert dieses Felds wird als Header für die PDF-Viewer-Komponente verwendet. Geben Sie den gleichen Text wie im vorherigen Schritt ein:
{{ui.table1.selectedRow["Filename"]}}.
Fügen Sie Komponenten hinzu UploadFile angezeigten
Die UploadFile Seite wird eine Dateiauswahl enthalten, mit der Sie eine Datei auswählen und in den konfigurierten Amazon S3-Bucket hochladen können. Sie fügen der Seite die S3-Upload-Komponente hinzu, mit der Benutzer eine Datei auswählen und hochladen können.
Wählen Sie im linken Seitenbereich die UploadFile Seite aus.
Suchen Sie auf der rechten Seite „Komponenten“ nach der S3-Upload-Komponente und ziehen Sie sie in die Mitte der Arbeitsfläche.
Wählen Sie die S3-Upload-Komponente aus, die Sie gerade zur Seite hinzugefügt haben.
Konfigurieren Sie im Eigenschaftenmenü auf der rechten Seite die Komponente:
Wählen Sie in der Dropdownliste Connector den Amazon S3-Connector aus, der unter den Voraussetzungen erstellt wurde.
Geben Sie für Bucket den Namen Ihres Amazon S3-Buckets ein.
Geben Sie als Dateiname ein
{{ui.s3Upload1.files[0]?.nameWithExtension}}.Geben Sie für Max file size den Wert
5in das Textfeld ein, und stellen Sie sicher, dass dieserMBWert in der Dropdownliste ausgewählt ist.Fügen Sie im Abschnitt Auslöser Aktionen hinzu, die nach erfolgreichen oder erfolglosen Uploads ausgeführt werden, indem Sie die folgenden Schritte ausführen:
So fügst du eine Aktion hinzu, die nach erfolgreichen Uploads ausgeführt wird:
Wählen Sie unter Bei Erfolg die Option + Aktion hinzufügen und dann Navigieren aus.
Wählen Sie die Aktion aus, die hinzugefügt wurde, um sie zu konfigurieren.
Wählen Sie als Navigationstyp die Option Seite aus.
Wählen Sie für Navigieren zu
FileList.Wählen Sie das Pfeilsymbol oben im Bedienfeld, um zum Hauptbereich „Eigenschaften“ zurückzukehren.
Um eine Aktion hinzuzufügen, die nach erfolglosen Uploads ausgeführt wird:
Wählen Sie unter Bei einem Fehler die Option + Aktion hinzufügen und dann Navigieren aus.
Wählen Sie die Aktion aus, die hinzugefügt wurde, um sie zu konfigurieren.
Wählen Sie als Navigationstyp die Option Seite aus.
Wählen Sie für Navigieren zu
FailUpload.Wählen Sie das Pfeilsymbol oben im Bedienfeld, um zum Hauptbereich „Eigenschaften“ zurückzukehren.
Fügen Sie Komponenten zum hinzu FailUpload angezeigten
Die FailUpload Seite ist eine einfache Seite mit einem Textfeld, das Benutzer darüber informiert, dass ihr Upload fehlgeschlagen ist.
Wählen Sie im linken Seitenbereich die FailUpload Seite aus.
Suchen Sie auf der rechten Seite mit den Komponenten nach der Textkomponente und ziehen Sie sie in die Mitte der Arbeitsfläche.
Wählen Sie die Textkomponente aus, die Sie gerade zur Seite hinzugefügt haben.
Geben Sie im Eigenschaftenmenü auf der rechten Seite im Feld
Failed to upload, try againWert den Wert ein.
Aktualisieren Sie die Sicherheitseinstellungen Ihrer App
Jede Anwendung in App Studio verfügt über Inhaltssicherheitseinstellungen, mit denen Sie externe Medien oder Ressourcen einschränken können oder auf welche Domänen in Amazon S3 Sie Objekte hochladen können. Die Standardeinstellung besteht darin, alle Domains zu blockieren. Um Objekte von Ihrer Anwendung auf Amazon S3 hochzuladen, müssen Sie die Einstellung so aktualisieren, dass die Domänen, auf die Sie Objekte hochladen möchten, zugelassen werden.
Um Domänen das Hochladen von Objekten auf Amazon S3 zuzulassen
Wählen Sie den Tab App-Einstellungen.
Wählen Sie den Tab Content Security Settings.
Wählen Sie für Verbindungsquelle die Option Alle Verbindungen zulassen aus.
Wählen Sie Speichern.
Nächste Schritte: Sehen Sie sich eine Vorschau der Anwendung an und veröffentlichen Sie sie zum Testen
Die Anwendung ist jetzt zum Testen bereit. Weitere Informationen zur Vorschau und Veröffentlichung von Anwendungen finden Sie unterAnwendungen in der Vorschau anzeigen, veröffentlichen und teilen.