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

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

نسخه: ۲.۰.۲

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

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

پیش‌نیازها

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

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

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

سرویس ذخیره‌سازی ساده آمازون (Amazon Simple Storage Service) یا به اختصار 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. عدد صحیح ۸۶۴۰۰ خیر.

پاسخ

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

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

خواص پاسخ

ملک توضیحات نوع پیش‌فرض
آدرس اینترنتی یک آدرس اینترنتی (URL) برای فایل درخواستی. رشته هیچ کدام.

لیست فایل‌ها

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

نحو

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

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

مثال

<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 کلید تولید شده است.
هیچ کدام. بله.