Extension Amazon S3

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

Version: 2.0.0

Gérer les fichiers dans un bucket Amazon S3 Avec cette extension, vous pouvez lister, télécharger et 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:

Vous en aurez besoin, ainsi que du nom du bucket AWS et de la région AWS, pour configure cette extension.

À 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 Valeur par défaut Obligatoire
fileName Nom du fichier à supprimer. Chaîne Aucune. Oui.

Réponse

Aucune.

Propriétés de 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ètre Description Type Valeur 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 réponse

Propriété Description Type Par défaut
contenu Chaîne contenant 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ètre Description Type Valeur par défaut Obligatoire
fileName Nom du fichier à télécharger. Chaîne Aucune. 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 réponse

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

listFiles

Invoque 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

Aucune.

Réponse

Tableau de noms de fichiers S3.

["hello_world.txt"]

Propriétés de réponse

Aucune.

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 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.
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 sous la forme suivante:

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

Lorsque vous l'envoyez à l'aide de 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.