Extension Amazon S3

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

Version : 1.1.1

Gérez les fichiers d'un paquet 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.

Prérequis

Avant d'utiliser l'extension à partir d'un proxy d'API à l'aide de la règle ExtensionCall, 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

Il 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 la réponse

Aucun.

Documentation de référence sur la configuration

Procédez comme suit lorsque vous configurez et déployez cette extension afin de 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 courantes des extensions

The following properties are present for every extension.

Property Description Default Required
name Name you're giving this configuration of the extension. None Yes
packageName Name of the extension package as given by Apigee Edge. None Yes
version Version number for the extension package from which you're configuring an extension. None Yes
configuration Configuration value specific to the extension you're adding. See Properties for this extension package None Yes

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