Extension Amazon S3

Vous consultez la documentation d'Apigee Edge.
Accédez à la documentation sur Apigee X.
info

Version: 1.1.0

Gérer les fichiers dans un bucket Amazon S3 Cette extension vous permet de lister, de télécharger et de supprimer des fichiers. Vous pouvez également générer une URL signée pour télécharger un fichier.

Chaque instance configurée de cette extension fonctionne avec un bucket spécifique. Pour plusieurs buckets, utilisez une instance configurée de cette extension pour chaque bucket.

Prérequis

Avant d'utiliser l'extension à partir d'un proxy d'API à l'aide de la règle ExtensionCallout, vous devez :

À propos d'Amazon S3

Amazon Simple Storage Service (Amazon S3) est un service de stockage d'objets.

Actions

deleteFile

Supprime le fichier spécifié d'un bucket S3.

Syntaxe

<Action>deleteFile</Action>
<Input><![CDATA[
{
  "fileName" : "name-of-file-to-delete"
}
]]>
</Input>

Exemple

<Action>deleteFile</Action>
<Input><![CDATA[
{
  "fileName" : "names.tmp"
}
]]>
</Input>

Paramètres de requête

Paramètre Description Type Par défaut Obligatoire
fileName Nom du fichier à supprimer. Chaîne Aucun. Oui.

Réponse

Aucun.

Propriétés de la réponse

Aucun.

downloadFile

Télécharge le fichier spécifié à partir d'un bucket S3.

Syntaxe

<Action>downloadFile</Action>
<Input><![CDATA[
{
  "fileName" : "filename"
}
]]>
</Input>
<Output>flow-variable</Output>

Exemple

<Action>downloadFile</Action>
<Input><![CDATA[
{
  "fileName" : "product-sheet.pdf"
}
]]>
</Input>
<Output>downloaded.file</Output>

Paramètres de requête

Paramètre Description Type Par défaut Obligatoire
fileName Nom du fichier à télécharger. Chaîne Aucun. Oui.

Réponse

JSON avec une propriété content incluant le contenu du fichier.

{
  "content":"Hello World!"
}

Propriétés de la réponse

Propriété Description Type Par défaut
contenu Chaîne comportant le contenu du fichier demandé. Chaîne. Aucun.

generateSignedURL

Génère une URL signée pour télécharger le fichier spécifié à partir d'un bucket S3.

Syntaxe

<Action>generateSignedURL</Action>
<Input><![CDATA[
{
  "fileName": "filename",
  "expiresIn": duration-in-seconds
}
]]>
</Input>
<Output>flow-variable</Output>

Exemple

<Action>generateSignedURL</Action>
<Input><![CDATA[
{
  "fileName": "product-info.pdf",
  "expiresIn": 3600
}
]]>
</Input>
<Output>download.url</Output>

Paramètres de requête

Paramètre Description Type Par défaut Obligatoire
fileName Nom du fichier à télécharger. Chaîne Aucun. Oui.
expiresIn Durée, en secondes, avant l'expiration de l'URL. Entier 86400 Non.

Réponse

JSON avec une propriété de chaîne url contenant l'URL générée.

{
  "url":"https://fake.s3.amazonaws.com/hello_world.txt?AWSAccessKeyId=123&Expires=1542753572&Signature=ABC"
}

Propriétés de la réponse

Propriété Description Type Par défaut
url URL du fichier demandé. Chaîne Aucun.

listFiles

Appelle l'exécution d'une fonction AWS Lambda.

Syntaxe

<Action>listFiles</Action>
<Input><![CDATA[{}]]></Input>
<Output>flow-variable</Output>

Vous devez spécifier parsed="false" sur l'élément <Output> si vous souhaitez que la variable contienne le JSON brut. Sinon, la variable n'est pas utilisable.

Exemple

<Action>listFiles</Action>
<Input><![CDATA[{}]]></Input>
<Output parsed="false">listFilesOutput</Output>

Paramètres de requête

Aucun.

Réponse

Tableau de noms de fichiers S3.

["hello_world.txt"]

Propriétés de réponse

Aucun.

Documentation de référence sur la configuration

Utilisez les éléments suivants lorsque vous configurez et déployez cette extension pour l'utiliser dans des proxys d'API. Pour savoir comment configurer une extension à l'aide de la console Apigee, consultez Ajouter et configurer une extension.

Propriétés d'extension courantes

Les propriétés suivantes sont présentes pour chaque extension.

Propriété Description Par défaut Obligatoire
name Nom que vous attribuez à cette configuration de l'extension. Aucune Oui
packageName Nom du package d'extension tel qu'indiqué par Apigee Edge. Aucune Oui
version Numéro de version du package d'extension à partir duquel vous configurez une extension. Aucune Oui
configuration Valeur de configuration spécifique à l'extension que vous ajoutez. Consultez Propriétés de ce package d'extension. Aucune Oui

Propriétés de ce package d'extension

Spécifiez des valeurs pour les propriétés de configuration suivantes, spécifiques à cette extension.

Propriété Description Par défaut Obligatoire
configuration Saisissez le nom du bucket Amazon S3 à utiliser, par exemple sample-bucket. Aucun. Oui.
configuration Saisissez le nom de la région AWS à utiliser, par exemple us-east-2. Aucun. Oui.
credentials Lorsqu'il est saisi dans la console Apigee Edge, il s'agit d'un fichier JSON contenant votre ID de clé d'accès Amazon et votre clé d'accès au format suivant:

{
"accessKeyId" : access-key-ID,
"secretAccessKey" : secret-access-key
}

Lorsqu'il est envoyé via l'API de gestion, il s'agit d'une valeur encodée en base64 générée à partir de ce fichier JSON de clé.
Aucun. Oui.