إضافة AWS Lambda

أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
info

الإصدار: 2.0.0

تنفيذ الدوال التي تم نشرها على AWS Lambda استخدِم هذه الإضافة لسرد الدوال المتاحة في حسابك على AWS، ثم استدعِ دوالاً معيّنة.

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

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

لمحة عن AWS Lambda

توفّر خدمة AWS Lambda بيئات حوسبة يمكنك فيها تنفيذ الدوال بإحدى اللغات المتوافقة.

الإجراءات

استدعاء

يستدعي هذه الدالة دالة أخرى على AWS Lambda.

لمزيد من التفاصيل حول المَعلمات، يُرجى الاطّلاع على مستندات AWS Lambda Invoke.

البنية

<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>

مَعلمات الطلب

لمزيد من التفاصيل حول المَعلمات، يُرجى الاطّلاع على مستندات AWS Lambda Invoke.

المَعلمة الوصف النوع تلقائي مطلوب
functionName تمثّل هذه المَعلمة اسم الدالة المطلوب استدعاؤها. سلسلة. بلا عُري نعم.
invocationType تحدّد ما إذا كان سيتم استدعاء الدالة بشكل متزامن أو غير متزامن أو التحقّق من صحة قيم المَعلمات. سلسلة. بلا عُري لا.
logType تحدّد هذه السمة اختياريًا ما إذا كان سيتم عرض آخر 4 كيلوبايت من بيانات السجلّ. سلسلة بلا عُري لا.
مؤهِّل إصدار الاسم المستعار لدالة Lambda المنشورة سلسلة بلا عُري لا.
الحمولة ملف JSON كمدخل إلى دالة Lambda سلسلة بلا عُري لا.

الردّ

مجموعة من الدوال التي تحتوي على تفاصيل إصدار معيّن في ما يلي مثال:

{
  "StatusCode" : 200,
  "Payload" : "{\"statusCode\":200,\"body\":\"\\\"Hello World!\\\"\"}"
}

خصائص الردّ

الموقع الوصف النوع تلقائي
StatusCode رمز حالة HTTP‬. عدد صحيح بلا عُري
الحمولة تمثّل هذه السمة عنصر JSON الذي تعرضه الدالة. يجب عرضها فقط إذا كان نوع الاستدعاء هو RequestResponse. بالنسبة إلى خطأ في الدالة، يحتوي هذا الحقل على رسالة وصف الخطأ. سلسلة بلا عُري

listFunctions

تعرض هذه السمة قائمة بدوال AWS Lambda المتاحة.

لمزيد من التفاصيل حول المَعلمات، يُرجى الاطّلاع على مستندات AWS Lambda ListFunctions.

البنية

<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>

مَعلمات الطلب

لمزيد من التفاصيل حول المَعلمات، يُرجى الاطّلاع على مستندات AWS Lambda ListFunctions.

المَعلمة الوصف النوع تلقائي مطلوب
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"
  }
]

خصائص الردّ

الموقع الوصف النوع القيمة التلقائية
الوصف تمثّل هذه السمة وصفًا للدالة. سلسلة. بلا عُري
المعالج الدالة التي تستدعيها Lambda لبدء تنفيذ الدالة سلسلة. بلا عُري
FunctionArn اسم مورد Amazon الخاص بالدالة سلسلة. بلا عُري
FunctionName اسم الدالة سلسلة. بلا عُري
الدور دور تنفيذ الدالة سلسلة. بلا عُري
وقت التشغيل بيئة وقت تشغيل الدالة سلسلة. بلا عُري
الإصدار إصدار الدالة سلسلة. بلا عُري

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

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

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

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

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

سمات حزمة هذه الإضافة

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

الموقع الوصف تلقائي مطلوب
منطقة AWS Lambda اسم المنطقة التي يتم نشر الدوال فيها على سبيل المثال: us-east-1. بلا عُري نعم.
بيانات الاعتماد عند إدخالها في وحدة تحكّم Apigee Edge، يكون هذا ملف JSON يحتوي على معرّف مفتاح الوصول ومفتاح الوصول إلى Amazon بالشكل التالي:

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

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