Extension Amazon S3

Vous consultez la documentation d'Apigee Edge.
Consultez la documentation Apigee X.
en savoir plus

Version: 1.1.1

Gérez les fichiers d'un bucket Amazon S3. Cette extension vous permet de répertorier, 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.

Conditions préalables

Avant d'utiliser l'extension à partir d'un proxy d'API avec 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ètres Description Type Par défaut Obligatoire
fileName Nom du fichier à supprimer. Chaîne Aucune Oui.

Réponse

Aucune

Propriétés de la réponse

Aucune

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ètres Description Type Par défaut Obligatoire
fileName Nom du fichier à télécharger. Chaîne Aucune Oui.

Réponse

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

{
  "content":"Hello World!"
}

Propriétés de la réponse

Propriété Description Type Par défaut
contenu Chaîne qui comporte le contenu du fichier demandé. Chaîne. Aucune

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ètres Description Type Par défaut Obligatoire
fileName Nom du fichier à télécharger. Chaîne Aucune Oui.
expiresIn Il s'agit du délai avant expiration de l'URL, en secondes. 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 Aucune

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 fichier 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

Aucune

Réponse

Tableau de noms de fichiers S3.

["hello_world.txt"]

Propriétés de la réponse

Aucune

Documentation de référence sur la configuration

Utilisez le code suivant 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 les valeurs des 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. Aucune Oui.
configuration Saisissez le nom de la région AWS à utiliser, par exemple us-east-2. Aucune Oui.
identifiants 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é.
Aucune Oui.