إضافة Amazon S3

أنت تعرض مستندات Apigee Edge.
انتقل إلى مستندات Apigee X.
معلومات

الإصدار: 1.1.1

يمكنك إدارة الملفات في حزمة Amazon S3. باستخدام هذه الإضافة، يمكنك إدراج الملفات وتنزيلها وحذفها. يمكنك أيضًا إنشاء عنوان URL مُوقَّع لتنزيل ملف.

يعمل كل مثيل تم ضبطه لهذه الإضافة مع حزمة معيّنة. بالنسبة إلى مجموعات البيانات المتعددة، استخدِم مثيلاً تم ضبطه لهذه الإضافة لكل مجموعة بيانات.

المتطلبات الأساسية

قبل استخدام الإضافة من خادم وكيل لواجهة برمجة التطبيقات باستخدام سياسة ExtensionCallout، عليك إجراء ما يلي:

لمحة عن Amazon S3

Amazon Simple Storage Service (Amazon S3) هي خدمة تخزين عناصر.

المهام

deleteFile

تؤدي هذه الوظيفة إلى حذف الملف المحدّد من حزمة S3.

البنية

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

مثال

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

معلمات الطلب

المعلمة الوصف النوع تلقائي مطلوب
fileName اسم الملف الذي تريد حذفه. سلسلة بلا عُري نعم.

الرد

بلا عُري

سمات الاستجابة

بلا عُري

downloadFile

يتم تنزيل الملف المحدَّد من حزمة 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>

معلمات الطلب

المعلمة الوصف النوع تلقائي مطلوب
fileName اسم الملف المطلوب تنزيله. سلسلة بلا عُري نعم.

الرد

ملف 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>

معلمات الطلب

المعلمة الوصف النوع تلقائي مطلوب
fileName اسم الملف المطلوب تنزيله. سلسلة بلا عُري نعم.
expiresIn المدة بالثواني إلى أن تنتهي صلاحية عنوان URL. عدد صحيح 86400 لا.

الرد

ملف JSON مع سمة سلسلة url تحتوي على عنوان URL الذي تم إنشاؤه

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

سمات الاستجابة

الموقع الوصف النوع تلقائي
url عنوان URL للملف المطلوب سلسلة بلا عُري

listFiles

يستدعي تنفيذ دالة AWS Lambda.

البنية

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

يجب تحديد parsed="false" في العنصر <Output> إذا أردت ذلك. المتغير ليحتوي على JSON الخام. وإلا، يكون المتغير غير قابل للاستخدام.

مثال

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

معلمات الطلب

بلا عُري

الرد

صفيف من أسماء ملفات S3

["hello_world.txt"]

خصائص الاستجابة

بلا عُري

مرجع الإعدادات

استخدِم ما يلي عند ضبط هذه الإضافة ونشرها لاستخدامها في الخوادم الوكيلة لواجهات برمجة التطبيقات. لمعرفة خطوات إعداد إضافة باستخدام وحدة تحكُّم Apigee، يُرجى الاطّلاع على إضافة إضافة وضبطها.

سمات الإضافات الشائعة

السمات التالية متاحة لكل إضافة.

الموقع الوصف تلقائي عنصر مطلوب
name الاسم الذي تُعطِه هذه الإضافة من الإضافات. لا ينطبق متوافق
packageName اسم حزمة الإضافة كما هو مُوضَّح من Apigee Edge. لا ينطبق متوافق
version رقم إصدار حزمة الإضافة التي تجري عملية إعداد الإضافة منها. لا ينطبق متوافق
configuration قيمة الإعداد المتعلقة بالإضافة التي تدرجها الاطّلاع على خصائص حزمة الإضافات هذه لا ينطبق متوافق

خصائص حزمة الإضافات هذه

حدِّد قيمًا لخصائص الضبط التالية الخاصة بهذه الإضافة.

الموقع الوصف تلقائي مطلوب
الإعدادات أدخِل اسم حزمة Amazon S3 المطلوب استخدامها، مثل sample-bucket. بلا عُري نعم.
الإعدادات أدخِل اسم منطقة AWS المراد استخدامها، مثل us-east-2. بلا عُري نعم.
بيانات الاعتماد ويكون هذا الملف عبارة عن ملف JSON يحتوي على رقم تعريف مفتاح الوصول إلى Amazon ومفتاح الوصول الخاص بك عند إدخالهما في وحدة تحكُّم Apigee Edge بالصيغة التالية:

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

عند إرسال هذا الملف عبر واجهة برمجة تطبيقات الإدارة، يتم إنشاء قيمة بترميز base64 يتم إنشاؤها من ملف JSON للمفتاح هذا.
بلا عُري نعم.