Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Interaction avec Amazon Simple Storage Service à l'aide de composants et d'automatisations
Vous pouvez invoquer diverses opérations Amazon S3 à partir d'une application App Studio. Par exemple, vous pouvez créer un panneau d'administration simple pour gérer vos utilisateurs et vos commandes et afficher vos contenus multimédias depuis Amazon S3. Bien que vous puissiez invoquer n'importe quelle opération Amazon S3 à l'aide de l' AWSaction Invoke, il existe quatre actions Amazon S3 dédiées que vous pouvez ajouter aux automatisations de votre application pour effectuer des opérations courantes sur des compartiments et des objets Amazon S3. Les quatre actions et leurs opérations sont les suivantes :
Mettre un objet : utilise l'
Amazon S3 PutObjectopération pour ajouter un objet dans un compartiment Amazon S3.Obtenir un objet : utilise l'
Amazon S3 GetObjectopération pour récupérer un objet depuis un compartiment Amazon S3.Répertorier les objets : utilise
Amazon S3 ListObjectscette opération pour répertorier les objets dans un compartiment Amazon S3.Supprimer l'objet : utilise l'
Amazon S3 DeleteObjectopération pour supprimer un objet d'un compartiment Amazon S3.
Outre les actions, il existe un composant de téléchargement S3 que vous pouvez ajouter aux pages des applications. Les utilisateurs peuvent utiliser ce composant pour choisir un fichier à charger, et le composant appelle Amazon S3 PutObject pour télécharger le fichier dans le compartiment et le dossier configurés. Ce didacticiel utilisera ce composant à la place de l'action autonome d'automatisation Put Object. (L'action autonome doit être utilisée dans des scénarios plus complexes impliquant une logique ou des actions supplémentaires à effectuer avant ou après le téléchargement.)
Conditions préalables
Ce guide part du principe que vous avez rempli les conditions préalables suivantes :
-
Création et configuration d'un compartiment Amazon S3, d'un rôle et d'une politique IAM et d'un connecteur Amazon S3 afin d'intégrer avec succès Amazon S3 à App Studio. Pour créer un connecteur, vous devez avoir le rôle d'administrateur. Pour de plus amples informations, veuillez consulter Connectez-vous à Amazon Simple Storage Service (Amazon S3).
Création d'une application vide
Créez une application vide à utiliser tout au long de ce guide en effectuant les étapes suivantes.
Pour créer une application vide
Dans le volet de navigation, sélectionnez Mes applications.
Choisissez + Créer une application.
Dans la boîte de dialogue Créer une application, donnez un nom à votre application, choisissez Repartir de zéro, puis cliquez sur Suivant.
Dans la boîte de dialogue Connexion aux données existantes, choisissez Ignorer pour créer l'application.
Choisissez Modifier l'application pour accéder au canevas de votre nouvelle application, où vous pouvez utiliser des composants, des automatisations et des données pour configurer l'apparence et les fonctions de votre application.
Création de pages
Créez trois pages dans votre application pour recueillir ou afficher des informations.
Pour créer des pages
Si nécessaire, choisissez l'onglet Pages en haut du canevas.
Dans la barre de navigation de gauche, une seule page a été créée avec votre application. Choisissez + Ajouter deux fois pour créer deux pages supplémentaires. Le volet de navigation doit afficher trois pages au total.
Mettez à jour le nom de la page Page1 en effectuant les étapes suivantes :
Choisissez l'icône en forme d'ellipses et choisissez Propriétés de la page.
Dans le menu Propriétés de droite, choisissez l'icône en forme de crayon pour modifier le nom.
Entrez
FileListet appuyez sur Entrée.
Répétez les étapes précédentes pour mettre à jour les deuxième et troisième pages comme suit :
Renommez la page 2 en.
UploadFileRenommez la page 3 en.
FailUpload
À présent, votre application doit comporter trois pages nommées FileList UploadFile, et FailUpload, qui sont affichées dans le panneau Pages de gauche.
Vous allez ensuite créer et configurer les automatisations qui interagissent avec Amazon S3.
Création et configuration d'automatisations
Créez les automatisations de votre application qui interagissent avec Amazon S3. Utilisez les procédures suivantes pour créer les automatisations suivantes :
Une automatisation GetFiles qui répertorie les objets de votre compartiment Amazon S3, qui seront utilisés pour remplir un composant de tableau.
Une automatisation DeleteFile qui supprime un objet de votre compartiment Amazon S3, qui sera utilisé pour ajouter un bouton de suppression à un composant de table.
Une automatisation ViewFile qui extrait un objet de votre compartiment Amazon S3 et l'affiche, qui sera utilisée pour afficher plus de détails sur un seul objet sélectionné dans un composant de table.
Créez une automatisation GetFiles
Créez une automatisation qui répertoriera les fichiers d'un compartiment Amazon S3 spécifié.
Choisissez l'onglet Automatisations en haut du canevas.
Choisissez + Ajouter une automatisation.
Dans le panneau de droite, choisissez Propriétés.
Mettez à jour le nom de l'automatisation en choisissant l'icône en forme de crayon. Entrez
getFileset appuyez sur Entrée.Ajoutez une action Lister les objets en effectuant les étapes suivantes :
Dans le panneau de droite, choisissez Actions.
Choisissez Lister les objets pour ajouter une action. L'action doit être nommée
ListObjects1.
Configurez l'action en effectuant les étapes suivantes :
Choisissez l'action dans le canevas pour ouvrir le menu Propriétés de droite.
Pour Connector, choisissez le connecteur Amazon S3 que vous avez créé à partir des prérequis.
Pour Configuration, entrez le texte suivant, en le
bucket_nameremplaçant par le compartiment que vous avez créé dans les prérequis :{ "Bucket": "bucket_name", "Prefix": "" }Note
Vous pouvez utiliser
Prefixce champ pour limiter la réponse aux objets commençant par la chaîne spécifiée.
Le résultat de cette automatisation sera utilisé pour remplir un composant de table avec des objets provenant de votre compartiment Amazon S3. Cependant, par défaut, les automatisations ne créent pas de sorties. Configurez l'automatisation pour créer une sortie d'automatisation en effectuant les étapes suivantes :
Dans la navigation de gauche, choisissez l'automatisation GetFiles.
Dans le menu Propriétés de droite, dans Sortie automatique, choisissez + Ajouter une sortie.
Dans le champ Sortie, entrez
{{results.ListObjects1.Contents}}. Cette expression renvoie le contenu de l'action et peut désormais être utilisée pour remplir un composant de tableau.
Créer une automatisation DeleteFile
Créez une automatisation qui supprime un objet d'un compartiment Amazon S3 spécifié.
Dans le panneau Automatisations de gauche, choisissez + Ajouter.
Choisissez + Ajouter une automatisation.
Dans le panneau de droite, choisissez Propriétés.
Mettez à jour le nom de l'automatisation en choisissant l'icône en forme de crayon. Entrez
deleteFileet appuyez sur Entrée.Ajoutez un paramètre d'automatisation, utilisé pour transmettre des données à un automatisme, en effectuant les étapes suivantes :
Dans le menu Propriétés de droite, dans Paramètres d'automatisation, choisissez + Ajouter.
Cliquez sur l'icône en forme de crayon pour modifier le paramètre d'automatisation. Modifiez le nom du paramètre
fileNameet appuyez sur Entrée.
Ajoutez une action Supprimer l'objet en effectuant les étapes suivantes :
Dans le panneau de droite, choisissez Actions.
Choisissez Supprimer l'objet pour ajouter une action. L'action doit être nommée
DeleteObject1.
Configurez l'action en effectuant les étapes suivantes :
Choisissez l'action dans le canevas pour ouvrir le menu Propriétés de droite.
Pour Connector, choisissez le connecteur Amazon S3 que vous avez créé à partir des prérequis.
Pour Configuration, entrez le texte suivant, en le
bucket_nameremplaçant par le compartiment que vous avez créé dans les prérequis :{ "Bucket": "bucket_name", "Key": params.fileName }
Créer une automatisation ViewFile
Créez une automatisation qui extrait un seul objet d'un compartiment Amazon S3 spécifié. Plus tard, vous configurerez cette automatisation avec un composant de visualisation de fichiers pour afficher l'objet.
Dans le panneau Automatisations de gauche, choisissez + Ajouter.
Choisissez + Ajouter une automatisation.
Dans le panneau de droite, choisissez Propriétés.
Mettez à jour le nom de l'automatisation en choisissant l'icône en forme de crayon. Entrez
viewFileet appuyez sur Entrée.Ajoutez un paramètre d'automatisation, utilisé pour transmettre des données à un automatisme, en effectuant les étapes suivantes :
Dans le menu Propriétés de droite, dans Paramètres d'automatisation, choisissez + Ajouter.
Cliquez sur l'icône en forme de crayon pour modifier le paramètre d'automatisation. Modifiez le nom du paramètre
fileNameet appuyez sur Entrée.
Ajoutez une action Obtenir un objet en effectuant les étapes suivantes :
Dans le panneau de droite, choisissez Actions.
Choisissez Obtenir un objet pour ajouter une action. L'action doit être nommée
GetObject1.
Configurez l'action en effectuant les étapes suivantes :
Choisissez l'action dans le canevas pour ouvrir le menu Propriétés de droite.
Pour Connector, choisissez le connecteur Amazon S3 que vous avez créé à partir des prérequis.
Pour Configuration, entrez le texte suivant, en le
bucket_nameremplaçant par le compartiment que vous avez créé dans les prérequis :{ "Bucket": "bucket_name", "Key": params.fileName }
Par défaut, les automatisations ne créent pas de sorties. Configurez l'automatisation pour créer une sortie d'automatisation en effectuant les étapes suivantes :
Dans la navigation de gauche, choisissez l'automatisation ViewFile.
Dans le menu Propriétés de droite, dans Sortie automatique, choisissez + Ajouter une sortie.
Dans le champ Sortie, entrez
{{results.GetObject1.Body.transformToWebStream()}}. Cette expression renvoie le contenu de l'action.Note
Vous pouvez lire la réponse de
S3 GetObjectde la manière suivante :transformToWebStream: Renvoie un flux qui doit être consommé pour récupérer les données. Si elle est utilisée comme sortie d'automatisation, l'automatisation gère cela et la sortie peut être utilisée comme source de données d'un composant de visionnage d'image ou de PDF. Il peut également être utilisé comme entrée pour une autre opération, telle queS3 PutObject.transformToString: renvoie les données brutes de l'automatisation et doit être utilisée dans une JavaScript action si vos fichiers contiennent du contenu textuel, tel que des données JSON. Il faut attendre, par exemple :await results.GetObject1.Body.transformToString();transformToByteArray: Renvoie un tableau d'entiers non signés sur 8 bits. Cette réponse sert à créer un tableau d'octets, qui permet le stockage et la manipulation de données binaires. Il faut attendre, par exemple :await results.GetObject1.Body.transformToByteArray();
Ensuite, vous allez ajouter des composants aux pages que vous avez créées précédemment et les configurer avec vos automatisations afin que les utilisateurs puissent utiliser votre application pour afficher et supprimer des fichiers.
Ajouter et configurer des composants de page
Maintenant que vous avez créé les automatisations qui définissent la logique métier et les fonctionnalités de votre application, vous allez créer des composants et les connecter.
Ajoutez des composants au FileList page
La FileList page que vous avez créée précédemment sera utilisée pour afficher la liste des fichiers du compartiment Amazon S3 configuré et plus de détails sur les fichiers sélectionnés dans la liste. Pour ce faire, vous allez procéder comme suit :
Créez un composant de tableau pour afficher la liste des fichiers. Vous allez configurer les lignes du tableau pour qu'elles soient remplies avec la sortie de l'automatisation GetFiles que vous avez créée précédemment.
Créez un composant de visionnage de PDF pour afficher un seul PDF. Vous allez configurer le composant pour afficher un fichier sélectionné dans le tableau, en utilisant l'automatisation ViewFile que vous avez créée précédemment pour récupérer le fichier depuis votre compartiment.
Pour ajouter des composants au FileList page
Choisissez l'onglet Pages en haut du canevas.
Dans le panneau Pages de gauche, choisissez la FileList page.
Sur la page Composants de droite, recherchez le composant Tableau et faites-le glisser vers le centre du canevas.
Choisissez le composant de tableau que vous venez d'ajouter à la page.
Dans le menu Propriétés de droite, choisissez la liste déroulante Source et sélectionnez Automatisation.
Choisissez la liste déroulante Automation et sélectionnez l'automatisation GetFiles. Le tableau utilisera la sortie de l'automatisation GetFiles comme contenu.
-
Ajoutez une colonne à remplir avec le nom du fichier.
Dans le menu Propriétés de droite, à côté de Colonnes, choisissez + Ajouter.
Choisissez l'icône en forme de flèche à droite de la colonne Colonne1 qui vient d'être ajoutée.
Pour Libellé de colonne, renommez la colonne en
Filename.Pour le champ Valeur, saisissez
{{currentRow.Key}}.Cliquez sur l'icône en forme de flèche en haut du panneau pour revenir au panneau principal des propriétés.
-
Ajoutez une action de tableau pour supprimer le fichier d'une ligne.
Dans le menu Propriétés de droite, à côté de Actions, choisissez + Ajouter.
Dans Actions, renommez le bouton en.
DeleteChoisissez l'icône en forme de flèche à droite de l'action Supprimer qui vient d'être renommée.
Dans En un clic, choisissez + Ajouter une action, puis choisissez Invoke automation.
Choisissez l'action qui a été ajoutée pour la configurer.
Pour Nom de l’action, saisissez
DeleteRecord.Dans Invoke automation, sélectionnez
deleteFile.Dans la zone de texte du paramètre, entrez
{{currentRow.Key}}.Pour le champ Valeur, saisissez
{{currentRow.Key}}.
-
Dans le panneau de droite, choisissez Composants pour afficher le menu des composants. Deux options s'offrent à vous pour afficher les fichiers :
Visionneuse d'images permettant d'afficher les fichiers
.pngportant une.jpgextension.jpeg, ou.Composant de visualisation de PDF permettant de visualiser des fichiers PDF.
Dans ce didacticiel, vous allez ajouter et configurer le composant de visualisation de PDF.
-
Ajoutez le composant de visualisation de PDF.
Sur la page Composants de droite, recherchez le composant du visualiseur PDF et faites-le glisser vers le canevas, en dessous du composant tableau.
Choisissez le composant de visionneuse PDF qui vient d'être ajouté.
Dans le menu Propriétés de droite, choisissez la liste déroulante Source et sélectionnez Automatisation.
Choisissez la liste déroulante Automation et sélectionnez l'automatisation ViewFile. Le tableau utilisera la sortie de l'automatisation ViewFile comme contenu.
Dans la zone de texte du paramètre, entrez
{{ui.table1.selectedRow["Filename"]}}.Dans le panneau de droite, il existe également un champ Nom de fichier. La valeur de ce champ est utilisée comme en-tête pour le composant du visualiseur PDF. Entrez le même texte qu'à l'étape précédente :
{{ui.table1.selectedRow["Filename"]}}.
Ajoutez des composants au UploadFile page
La UploadFile page contiendra un sélecteur de fichier qui peut être utilisé pour sélectionner et charger un fichier dans le compartiment Amazon S3 configuré. Vous allez ajouter le composant de téléchargement S3 à la page, que les utilisateurs pourront utiliser pour sélectionner et télécharger un fichier.
Dans le panneau Pages de gauche, choisissez la UploadFile page.
Sur la page Composants de droite, recherchez le composant de téléchargement S3 et faites-le glisser vers le centre du canevas.
Choisissez le composant de téléchargement S3 que vous venez d'ajouter à la page.
Dans le menu Propriétés de droite, configurez le composant :
Dans la liste déroulante Connector, sélectionnez le connecteur Amazon S3 qui a été créé dans les conditions requises.
Pour Bucket, entrez le nom de votre bucket Amazon S3.
Dans le champ Nom du fichier, entrez
{{ui.s3Upload1.files[0]?.nameWithExtension}}.Pour Taille de fichier maximale, entrez
5dans la zone de texte et assurez-vous que cette optionMBest sélectionnée dans la liste déroulante.Dans la section Déclencheurs, ajoutez des actions qui s'exécutent après des chargements réussis ou non en effectuant les étapes suivantes :
Pour ajouter une action qui s'exécute après des chargements réussis, procédez comme suit :
Dans En cas de succès, choisissez + Ajouter une action et sélectionnez Naviguer.
Choisissez l'action qui a été ajoutée pour la configurer.
Pour Type de navigation, choisissez Page.
Pour Naviguer vers, choisissez
FileList.Cliquez sur l'icône en forme de flèche en haut du panneau pour revenir au panneau principal des propriétés.
Pour ajouter une action qui s'exécute après un téléchargement infructueux, procédez comme suit :
Dans En cas d'échec, choisissez + Ajouter une action, puis sélectionnez Naviguer.
Choisissez l'action qui a été ajoutée pour la configurer.
Pour Type de navigation, choisissez Page.
Pour Naviguer vers, choisissez
FailUpload.Cliquez sur l'icône en forme de flèche en haut du panneau pour revenir au panneau principal des propriétés.
Ajoutez des composants au FailUpload page
La FailUpload page est une page simple contenant une zone de texte qui informe les utilisateurs que leur téléchargement a échoué.
Dans le panneau Pages de gauche, choisissez la FailUpload page.
Sur la page Composants de droite, recherchez le composant Texte et faites-le glisser vers le centre du canevas.
Choisissez le composant de texte que vous venez d'ajouter à la page.
Dans le menu Propriétés de droite, dans Valeur, entrez
Failed to upload, try again.
Mettez à jour les paramètres de sécurité de votre application
Chaque application d'App Studio possède des paramètres de sécurité du contenu que vous pouvez utiliser pour restreindre les médias ou les ressources externes, ou pour déterminer vers quels domaines d'Amazon S3 vous pouvez télécharger des objets. Le réglage par défaut est de bloquer tous les domaines. Pour télécharger des objets vers Amazon S3 depuis votre application, vous devez mettre à jour le paramètre afin d'autoriser les domaines vers lesquels vous souhaitez charger des objets.
Pour autoriser les domaines à charger des objets sur Amazon S3
Choisissez l'onglet Paramètres de l'application.
Choisissez l'onglet Paramètres de sécurité du contenu.
Pour Connecter la source, choisissez Autoriser toutes les connexions.
Choisissez Enregistrer.
Prochaines étapes : prévisualisez et publiez l'application à des fins de test
L'application est maintenant prête à être testée. Pour plus d'informations sur la prévisualisation et la publication d'applications, consultezPrévisualisation, publication et partage d'applications.