برنامه افزودنی آمازون S3

شما در حال مشاهده اسناد Apigee Edge هستید.
به مستندات Apigee X بروید .
اطلاعات

نسخه: 1.0.0

فایل ها را در سطل آمازون S3 مدیریت کنید. با این پسوند می توانید فایل ها را فهرست، دانلود و حذف کنید. همچنین می توانید یک URL امضا شده برای دانلود یک فایل ایجاد کنید.

هر نمونه پیکربندی شده این افزونه با یک سطل خاص کار می کند. برای چند سطل، از یک نمونه پیکربندی شده از این افزونه برای هر سطل استفاده کنید.

پیش نیازها

قبل از استفاده از برنامه افزودنی از یک پروکسی API با استفاده از خط مشی ExtensionCallout ، باید:

درباره آمازون S3

سرویس ذخیره سازی ساده آمازون (Amazon S3) یک سرویس ذخیره سازی اشیا است.

اقدامات

حذف فایل

فایل مشخص شده را از یک سطل S3 حذف می کند.

نحو

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

مثال

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

درخواست پارامترها

پارامتر توضیحات تایپ کنید پیش فرض مورد نیاز
نام فایل نام فایل مورد نظر برای حذف رشته هیچ کدام. بله.

پاسخ

هیچ کدام.

ویژگی های پاسخگویی

هیچ کدام.

دانلود فایل

فایل مشخص شده را از یک سطل S3 دانلود می کند.

نحو

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

مثال

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

درخواست پارامترها

پارامتر توضیحات تایپ کنید پیش فرض مورد نیاز
نام فایل نام فایل برای دانلود. رشته هیچ کدام. بله.

پاسخ

JSON با ویژگی content حاوی محتوای فایل.

{
  "content":"Hello World!"
}

ویژگی های پاسخگویی

اموال توضیحات تایپ کنید پیش فرض
محتوا رشته ای که حاوی محتوای فایل درخواستی است. رشته هیچ کدام.

generateSignedURL

یک URL امضا شده برای دانلود فایل مشخص شده از یک سطل S3 ایجاد می کند.

نحو

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

مثال

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

درخواست پارامترها

پارامتر توضیحات تایپ کنید پیش فرض مورد نیاز
نام فایل نام فایل برای دانلود. رشته هیچ کدام. بله.
منقضی می شود مدت زمان بر حسب ثانیه تا زمانی که URL منقضی شود. عدد صحیح 86400 خیر

پاسخ

JSON با ویژگی رشته url حاوی URL تولید شده.

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

ویژگی های پاسخگویی

اموال توضیحات تایپ کنید پیش فرض
آدرس اینترنتی آدرس فایل درخواستی رشته هیچ کدام.

listFiles

اجرای یک تابع AWS Lambda را فراخوانی می کند.

نحو

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

اگر می خواهید متغیر حاوی JSON خام باشد، باید parsed="false" را در عنصر <Output> مشخص کنید. در غیر این صورت متغیر قابل استفاده نیست.

مثال

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

درخواست پارامترها

هیچ کدام.

پاسخ

آرایه ای از نام فایل های S3.

["hello_world.txt"]

ویژگی های پاسخگویی

هیچ کدام.

مرجع پیکربندی

هنگام پیکربندی و استقرار این افزونه برای استفاده در پراکسی های API از موارد زیر استفاده کنید. برای مراحل پیکربندی یک برنامه افزودنی با استفاده از کنسول Apigee، به افزودن و پیکربندی یک برنامه افزودنی مراجعه کنید.

ویژگی های رایج پسوند

ویژگی های زیر برای هر افزونه وجود دارد.

ویژگی شرح پیش فرض ضروری
name نامی که به این پیکربندی افزونه می‌دهید. هیچ یک آره
packageName نام بسته افزودنی همانطور که توسط Apigee Edge داده شده است. هیچ یک آره
version شماره نسخه بسته برنامه افزودنی که از آن یک برنامه افزودنی را پیکربندی می کنید. هیچ یک آره
configuration مقدار پیکربندی مخصوص افزونه ای که اضافه می کنید. به ویژگی های این بسته برنامه افزودنی مراجعه کنید هیچ یک آره

ویژگی های این بسته افزونه

مقادیری را برای خصوصیات پیکربندی زیر مخصوص این افزونه مشخص کنید.

اموال توضیحات پیش فرض مورد نیاز
پیکربندی نام سطل آمازون S3 را برای استفاده وارد کنید، مانند sample-bucket . هیچ کدام. بله.
پیکربندی نام منطقه AWS مورد استفاده را وارد کنید، مانند us-east-2 . هیچ کدام. بله.
اعتبارنامه هنگامی که در کنسول Apigee Edge وارد می‌شوید، این یک فایل JSON است که شامل شناسه کلید دسترسی آمازون و کلید دسترسی شما به شکل زیر است:

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

هنگامی که از طریق API مدیریت ارسال می شود، یک مقدار کدگذاری شده با base64 است که از آن فایل کلید JSON تولید می شود.
هیچ کدام. بله.