أنت تطّلع على مستندات Apigee Edge.
انتقِل إلى مستندات
Apigee X. info
الإصدار: 2.0.0
يمكنك إدراج عناوين URL موقَّعة للملفات في حزمة Cloud Storage وتنزيلها وإنشاؤها.
يوفّر هذا المحتوى مرجعًا لضبط هذه الإضافة واستخدامها. قبل استخدام هذه الإضافة من خادم وكيل لواجهة برمجة التطبيقات، عليك إجراء ما يلي:
حمِّل العناصر إلى حزمة التخزين.
امنح الإذن بالوصول إلى الحزمة لحساب خدمة Google Cloud Platform الذي يمثّل إضافة Google Cloud Storage. لمزيد من المعلومات عن الدور الذي تريد استخدامه، اطّلِع على أدوار Cloud Storage. لمزيد من المعلومات عن الأذونات في Cloud Storage، يُرجى الاطّلاع على مقالة استخدام أذونات "إدارة الهوية وإمكانية الوصول" (IAM).
استخدِم وحدة تحكّم Google Cloud Platform لإنشاء مفتاح لحساب الخدمة.
استخدِم محتوى ملف JSON الناتج عن المفتاح عند إضافة الإضافة وضبطها باستخدام مرجع الإعدادات.
لمحة عن Cloud Storage
Cloud Storage هي خدمة لتخزين الملفات بأمان وبشكل دائم وقابل للتوسّع. إذا كنت قد بدأت للتو استخدام Cloud Storage، يمكنك البدء من خلال الدليل السريع في مستندات Cloud Storage.
نماذج
توضّح الأمثلة التالية كيفية ضبط التوافق مع إجراءات إضافة Cloud Storage باستخدام سياسة ExtensionCallout.
عرض قائمة الملفات
في المثال التالي، يسترجع الإجراء listFiles
في الإضافة قائمة بالملفات، ويعرضها في صفيف. لا يقبل الإجراء listFiles
أي مَعلمات إدخال.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="false" enabled="true" name="Get-Storage-File-List">
<DisplayName>Get Storage File List</DisplayName>
<Connector>cloud-storage-extension-example</Connector>
<Action>listFiles</Action>
<Input><![CDATA[{}]]></Input>
<Output parsed="false">storage.filelist.retrieved</Output>
</ConnectorCallout>
تظهر قيمة الاستجابة على النحو التالي:
["example-text.txt","example-image.png"]
تسترجع سياسة "تعيين الرسالة" التالية قيمة الاستجابة من سياسة ExtensionCallout أعلاه وتنسخها في الحمولة البرمجية للاستجابة.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Assign-Storage-File-List">
<DisplayName>Assign Storage File List</DisplayName>
<AssignTo type="response" createNew="false"/>
<Set>
<Payload contentType="application/json">{storage.filelist.retrieved}</Payload>
</Set>
</AssignMessage>
تنزيل ملف
تستخدِم سياسة ExtensionCallout التالية إضافة Google Cloud Storage لتنزيل ملف نصي بسيط يحتوي على Some example text.
فقط.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="false" enabled="true" name="Download-File">
<DisplayName>Download File</DisplayName>
<Connector>cloud-storage-extension-example</Connector>
<Action>downloadFile</Action>
<Input><![CDATA[{"fileName": "example-text.txt"}]]></Input>
<Output>storage.file.retrieved</Output>
</ConnectorCallout>
تظهر قيمة الاستجابة على النحو التالي:
{"content":"Some example text."}
تسترجع سياسة "تعيين الرسالة" التالية القيمة التي عرضتها الإضافة وتنسخها إلى حمولة الاستجابة.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Assign-Storage-File-List">
<DisplayName>Assign Storage File List</DisplayName>
<AssignTo type="response" createNew="false"/>
<Set>
<Payload contentType="application/json">{storage.file.retrieved}</Payload>
</Set>
</AssignMessage>
إنشاء عنوان URL موقَّع
تستخدِم سياسة ExtensionCallout التالية هذه الإضافة لإنشاء عنوان URL لتنزيل الملف المحدّد من حزمة Cloud Storage. ويتمّ ضبط اسم الملف، بالإضافة إلى التاريخ الذي ستنتهي صلاحية عنوان URL بعده ولن يعود صالحًا.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="false" enabled="true" name="Get-Signed-URL">
<DisplayName>Get Signed URL</DisplayName>
<Connector>cloud-storage-extension-example</Connector>
<Action>generateSignedURL</Action>
<Input><![CDATA[{
"fileName" : "example-text.txt",
"expiresOn" : "2018-08-05"
}]]></Input>
<Output>storage.url.retrieved</Output>
</ConnectorCallout>
تبدو قيمة الإرجاع للإضافة على النحو التالي.
{"url":"https://storage.googleapis.com/storage-extension-example/example-text.txt?GoogleAccessId=extension-test%40my-test-33333.iam.gserviceaccount.com&Expires=1533427200&Signature=Y1cE1DCHesWeIZILRhdIuDR%2FhzZXZ%2BPeY3J1PUkRiosFYj41itHBWh2%2BTQgH9kI6E8s2mWrVDFU43YR7s8Tm9W5VgWRwh0nXSactQ0xKbkKbGZmCcWxgIscOezc1zc%2Bp7lnXSx1qd4wIlIKVH4KCd9WLx4qB1dLxGNxMKB32tA3dio5IiMXaHEA%2FR2fYc0Pjh45t8L5rilk5pekv7jfd3sfsgdfgfdglkj%2F7E%2FlJ%2B60RnetqV2IDqrc0sVEgSLTpgTbDGU%2Ft3EcitRUFOSdOb5czt7CiIwKAYSmDEFMSNHHiNTWjvLzq4IU%2BCa4Z5aKyvww%3D%3D"}
تسترجع سياسة "تعيين الرسالة" التالية القيمة التي تعرضها الإضافة وتنسخها إلى نص الاستجابة.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Assign-Storage-File-URL">
<DisplayName>Assign Storage File URL</DisplayName>
<AssignTo type="response" createNew="false"/>
<Set>
<Payload contentType="application/json">{storage.url.retrieved}</Payload>
</Set>
</AssignMessage>
المهام
downloadFile
تنزيل الملف المحدّد
مَعلمات الطلب
المَعلمة | الوصف | النوع | تلقائي | مطلوب |
---|---|---|---|---|
fileName | الملف المطلوب تنزيله | سلسلة | بلا عُري | نعم. |
البنية
<Input><![CDATA[{"fileName" : "the-file-to-download"}]]></Input>
مثال
<Input><![CDATA[{"fileName" : "example-text.txt"}]]></Input>
الردّ
ملف JSON يمثّل عنصرًا يحتوي على محتوى الملف الذي تم تنزيله على سبيل المثال:
{"content":"Some example text."}
listFiles
تعرض هذه الصفحة الملفات المتاحة للتنزيل.
مَعلمات الطلب
بلا عُري
الردّ
مصفوفة من أسماء الملفات على سبيل المثال:
["example-text.txt","example-image.png"]
generateSignedURL
لإنشاء عنوان URL موقَّع لملف محدّد في الحزمة يمكن استخدام عنوان URL هذا لتنزيل الملف.
مَعلمات الطلب
المَعلمة | الوصف | النوع | تلقائي | مطلوب |
---|---|---|---|---|
fileName | اسم عنصر Cloud Storage الذي تريد إنشاء عنوان URL موقّع له. | سلسلة | بلا عُري | نعم. |
expiresOn | تاريخ انتهاء صلاحية عنوان URL الموقَّع | سلسلة | بلا عُري | لا. |
البنية
<Input><![CDATA[{
"fileName" : "file-for-which-to-generate-url",
"expiresOn" : "date-to-expire-url"
}]]></Input>
مثال
<Input><![CDATA[{
"fileName" : "example-text.txt",
"expiresOn" : "2018-08-05"
}]]></Input>
الردّ
ملف JSON يمثّل عنصرًا يتضمّن عنوان URL موقَّعًا على سبيل المثال:
{"url":"https://storage.googleapis.com/storage-extension-example/example-text.txt?GoogleAccessId=extension-test%40my-test-33333.iam.gserviceaccount.com&Expires=1533427200&Signature=Y1cE1DCHesWeIZILRhdIuDR%2FhzZXZ%2BPeY3J1PUkRiosFYj41itHBWh2%2BTQgH9kI6E8s2mWrVDFU43YR7s8Tm9W5VgWRwh0nXSactQ0xKbkKbGZmCcWxgIscOezc1zc%2Bp7lnXSx1qd4wIlIKVH4KCd9WLx4qB1dLxGNxMKB32tA3dio5IiMXaHEA%2FR2fYc0Pjh45t8L5rilk5pekv7jfd3sfsgdfgfdglkj%2F7E%2FlJ%2B60RnetqV2IDqrc0sVEgSLTpgTbDGU%2Ft3EcitRUFOSdOb5czt7CiIwKAYSmDEFMSNHHiNTWjvLzq4IU%2BCa4Z5aKyvww%3D%3D"}
مرجع الإعدادات
استخدِم ما يلي عند ضبط هذه الإضافة ونشرها لاستخدامها في الخوادم الوكيلة لواجهات برمجة التطبيقات. لمعرفة خطوات ضبط إضافة باستخدام وحدة تحكّم Apigee، اطّلِع على إضافة إضافة وضبطها.
سمات الإضافات الشائعة
السمات التالية متاحة لكل إضافة.
الموقع | الوصف | تلقائي | عنصر مطلوب |
---|---|---|---|
name |
الاسم الذي تُعطِه هذه الإضافة من الإضافات. | لا ينطبق | متوافق |
packageName |
اسم حزمة الإضافة كما هو مُوضَّح من Apigee Edge. | لا ينطبق | متوافق |
version |
رقم إصدار حزمة الإضافة التي تجري عملية إعداد الإضافة منها. | لا ينطبق | متوافق |
configuration |
قيمة الإعداد المتعلقة بالإضافة التي تدرجها الاطّلاع على خصائص حزمة الإضافات هذه | لا ينطبق | متوافق |
سمات حزمة الإضافة هذه
الموقع | الوصف | تلقائي | مطلوب |
---|---|---|---|
bucketName | حزمة GCS التي يجب أن تتفاعل معها هذه الإضافة. | بلا عُري | نعم. |