أنت تعرض مستندات Apigee Edge.
انتقل إلى
مستندات Apigee X. معلومات
الإصدار: 1.1.2
تنفيذ الدوال المنشورة على AWS Lambda يمكنك استخدام هذه الإضافة لإدراج الدوال المتاحة في حسابك على AWS، ثم استدعاء وظائف محدَّدة.
المتطلبات الأساسية
قبل استخدام الإضافة من خادم وكيل لواجهة برمجة التطبيقات باستخدام سياسة ExtensionCallout، عليك إجراء ما يلي:
احصل على رقم تعريف مفتاح الوصول ومفتاح الوصول السري الخاص بخدمة Amazon.
ستحتاج إليها، بالإضافة إلى اسم المنطقة التي تم نشر الدوال، لضبطها لهذه الإضافة.
انشر دالة Lambda. لكي تتمكّن الإضافة من الوصول إلى دالة Lambda، يجب أن تكون أيًا مما يلي:
- تم النشر في شبكة VPC عامة
- تم النشر في سحابة VPC خاصة مع بوابة ترجمة عنوان الشبكة العامة.
لمزيد من المعلومات، يُرجى الاطّلاع على إعداد دالة Lambda للوصول إلى الموارد في VPC Amazon.
لمحة عن AWS Lambda
يوفر AWS Lambda بيئات حوسبة يمكنك من خلالها تنفيذ الدوال بإحدى اللغات المتاحة.
المهام
استدعاء
لاستدعاء دالة في AWS Lambda.
لمزيد من التفاصيل عن المَعلمات، اطّلِع على مستندات استدعاء AWSS Lambda.
البنية
<Action>invoke</Action>
<Input><![CDATA[
{
"functionName" : "function-on-lambda",
"invocationType" : "RequestResponse | Event | DryRun",
"logType" : "None | Tail",
"qualifier" : "Version-or-alias",
"payload" : "Escaped-JSON-string"
}
]]>
</Input>
<Output>flow-variable</Output>
مثال
<Action>invoke</Action>
<Input><![CDATA[
{
"functionName" : "helloWorld",
"invocationType" : "RequestResponse",
"logType" : "None",
"qualifier" : "$LATEST",
"payload" : "{ \"key\": \"val\" }"
}
]]>
</Input>
<Output>function.response.value</Output>
معلمات الطلب
لمزيد من التفاصيل عن المَعلمات، اطّلِع على مستندات استدعاء AWSS Lambda.
المعلمة | الوصف | النوع | تلقائي | مطلوب |
---|---|---|---|---|
functionName | اسم الدالة المطلوب استدعاؤها. | سلسلة. | بلا عُري | نعم. |
invocationType | تحدِّد هذه السياسة ما إذا كان سيتم استدعاء الدالة بشكل متزامن أو غير متزامن أو التحقّق من صحة قيم المَعلمات. | سلسلة. | بلا عُري | لا. |
logType | تحدّد هذه السياسة بشكل اختياري ما إذا كان سيتم عرض آخر 4 كيلوبايت من بيانات السجلّ. | سلسلة | بلا عُري | لا. |
مؤهِّل | تمثّل هذه السمة إصدار الاسم المستعار لدالة لامدا منشورة. | سلسلة | بلا عُري | لا. |
حمولة البيانات | JSON كإدخال في دالة lambda. | سلسلة | بلا عُري | لا. |
الرد
يشير ذلك المصطلح إلى مصفوفة من الدوال التي تحتوي على تفاصيل إصدار معيّن. فيما يلي مثال:
{
"StatusCode" : 200,
"Payload" : "{\"statusCode\":200,\"body\":\"\\\"Hello World!\\\"\"}"
}
خصائص الاستجابة
الموقع | الوصف | النوع | تلقائي |
---|---|---|---|
StatusCode | رمز حالة HTTP. | عدد صحيح | بلا عُري |
الحمولة | ملف JSON الذي يمثل الكائن الذي تعرضه الدالة لا تتم مشاركة العرض إلا إذا كان نوع الاستدعاء هو RequestResponse. بالنسبة لخطأ دالة، يحتوي هذا على رسالة وصف الخطأ. | سلسلة | بلا عُري |
listFunctions
يسرد دوال AWS Lambda المتاحة.
للحصول على مزيد من التفاصيل عن المَعلمات، يمكنك الاطّلاع على مستندات دوال ListFunctions في AWS.
البنية
<Action>listFunctions</Action>
<Input><![CDATA[
{
"masterRegion" : "ALL | [a-z]{2}(-gov)?-[a-z]+-\d{1}",
"functionVersion" : "ALL",
"maxItems" : 1 - 10000
}
]]>
</Input>
<Output>flow-variable</Output>
مثال
<Action>listFunctions</Action>
<Input><![CDATA[
{
"masterRegion" : "ALL",
"functionVersion" : "ALL",
"maxItems" : 50
}
]]>
</Input>
<Output>function.list</Output>
معلمات الطلب
للحصول على مزيد من التفاصيل عن المَعلمات، يمكنك الاطّلاع على مستندات دوال ListFunctions في AWS.
المعلمة | الوصف | النوع | تلقائي | مطلوب |
---|---|---|---|---|
masterRegion | المنطقة (مثل us-east-2 ) التي يجب إدراج وظائفها. ALL لتضمين الدوال من أي منطقة. وإذا تم تحديدها، يجب أيضًا تحديد functionVersion . |
سلسلة | بلا عُري | لا. |
functionVersion | حدِّد ALL لإدراج جميع النُسخ المنشورة. في حال عدم تحديد قيمة، لن يتم عرض سوى آخر إصدار ARN لم يتم نشره. |
سلسلة | بلا عُري | لا. |
maxItems | الحد الأقصى لعدد الدوال المطلوب عرضها استجابةً للدالة. يجب أن تكون القيمة أكبر من 0. الحد الأقصى المطلق الذي يمكن إرجاعه هو 50. | عدد صحيح | بلا عُري | لا. |
الرد
JSON يمثل مجموعة من الدوال التي تحتوي على تفاصيل إصدار محددة.
[
{
"FunctionName": "helloWorld",
"FunctionArn": "arn:aws:lambda:fake-region:012345:function:helloWorld",
"Runtime": "nodejs",
"Role": "arn:aws:iam::012345:role/service-role/fakeRole",
"Handler": "index.handler",
"Description": "A Hello World lambda function.",
"Version": "$LATEST"
},
{
"FunctionName": "helloWorld",
"FunctionArn": "arn:aws:lambda:fake-region:012345:function:helloWorld",
"Runtime": "nodejs",
"Role": "arn:aws:iam::012345:role/service-role/fakeRole",
"Handler": "index.handler",
"Description": "A Hello World lambda function.",
"Version": "1"
}
]
خصائص الاستجابة
الموقع | الوصف | النوع | القيمة التلقائية |
---|---|---|---|
الوصف | تمثّل هذه السمة وصفًا للدالة. | سلسلة. | بلا عُري |
المعالج | الدالة التي تستدعيها لامدا لبدء تنفيذ الدالة. | سلسلة. | بلا عُري |
FunctionArn | اسم مورد Amazon الخاص بالدالة. | سلسلة. | بلا عُري |
FunctionName | تمثّل هذه السمة اسم الدالة. | سلسلة. | بلا عُري |
الدور | يشير ذلك المصطلح إلى دور تنفيذ الدالة. | سلسلة. | بلا عُري |
وقت التشغيل | بيئة وقت تشغيل الدالة | سلسلة. | بلا عُري |
الإصدار | إصدار الدالة. | سلسلة. | بلا عُري |
مرجع الإعداد
يمكنك استخدام ما يلي عند إعداد هذه الإضافة ونشرها للاستخدام في الخوادم الوكيلة لواجهة برمجة التطبيقات. لمعرفة خطوات إعداد إضافة باستخدام وحدة تحكُّم Apigee، يُرجى الاطّلاع على إضافة إضافة وضبطها.
خصائص الإضافات الشائعة
السمات التالية متاحة لكل إضافة.
الموقع | الوصف | تلقائي | عنصر مطلوب |
---|---|---|---|
name |
الاسم الذي تُعطِه هذه الإضافة من الإضافات. | لا ينطبق | متوافق |
packageName |
اسم حزمة الإضافة كما هو مُوضَّح من Apigee Edge. | لا ينطبق | متوافق |
version |
رقم إصدار حزمة الإضافة التي تجري عملية إعداد الإضافة منها. | لا ينطبق | متوافق |
configuration |
قيمة الإعداد المتعلقة بالإضافة التي تدرجها الاطّلاع على خصائص حزمة الإضافات هذه | لا ينطبق | متوافق |
خصائص حزمة الإضافات هذه
حدِّد قيمًا لخصائص الضبط التالية الخاصة بهذه الإضافة.
الموقع | الوصف | تلقائي | مطلوب |
---|---|---|---|
منطقة لامدا AWS | اسم المنطقة التي تم نشر الدوال بها. مثلاً: us-east-1 |
بلا عُري | نعم. |
بيانات الاعتماد | ويكون هذا الملف عند إدخاله في وحدة تحكُّم Apigee Edge، وهو ملف JSON يحتوي على رقم تعريف مفتاح الوصول إلى Amazon ومفتاح الوصول إليه بالصيغة التالية:{ "accessKeyId" : "access-key-ID", "secretAccessKey" : "secret-access-key" } عند إرسال هذا الملف عبر واجهة برمجة تطبيقات الإدارة، يتم إنشاء قيمة بترميز base64 يتم إنشاؤها من ملف JSON للمفتاح هذا. |
بلا عُري | نعم. |