افزونه AWS Lambda

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

نسخه: 2.0.0

توابع مستقر در AWS Lambda را اجرا کنید. از این افزونه برای فهرست کردن توابع دردسترس در حساب AWS خود استفاده کنید، سپس توابع خاصی را فراخوانی کنید.

پیش‌نیازها

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

درباره AWS Lambda

AWS Lambda محیط‌های محاسباتی را فراهم می‌کند که در آن‌ها می‌توانید توابع را به یکی از زبان‌های پشتیبانی‌شده اجرا کنید.

کنش‌ها

فراخواندن

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

برای جزئیات بیشتر درباره پارامترها، به اسناد فراخوانی AWS 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>

پارامترهای درخواست

برای جزئیات بیشتر درباره پارامترها، به اسناد فراخوانی AWS Lambda مراجعه کنید.

پارامتر شرح نوع پیش‌فرض الزامی
functionName نام تابعی که باید فراخوانی شود. رشته. هیچ‌کدام. بله.
invocationType مشخص می‌کند که آیا تابع به‌صورت هم‌زمان، غیرهم‌زمان، یا با اعتبارسنجی مقادیر پارامتر فراخوانی شود. رشته. هیچ‌کدام. شماره.
logType به‌صورت اختیاری مشخص می‌کند که آیا ۴ کیلوبایت آخر داده‌های گزارش برگردانده شود یا نه. رشته هیچ‌کدام. شماره.
توصیف‌گر نسخه نام مستعار تابع Lambda منتشرشده. رشته هیچ‌کدام. شماره.
پایه‌بار ‫JSON به‌عنوان ورودی تابع Lambda. رشته هیچ‌کدام. شماره.

پاسخ

آرایه‌ای از توابع حاوی جزئیات نسخه خاص. مثال زیر را درنظر بگیرید:

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

خصوصیت‌های پاسخ

دارایی شرح نوع پیش‌فرض
StatusCode کد وضعیت HTTP. عدد صحیح هیچ‌کدام.
پایه‌بار ‫JSON نشان‌دهنده شیء برگشتی توسط تابع. فقط درصورتی‌که نوع فراخوانی «درخواست پاسخ» باشد ارائه می‌شود. برای خطای تابع، این شامل پیام شرح خطا است. رشته هیچ‌کدام.

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 حداکثر تعداد توابع برای برگرداندن در پاسخ. باید بزرگ‌تر از ۰ باشد. حداکثر تعداد مطلق مواردی که می‌توان برگرداند ۵۰ است. عدد صحیح هیچ‌کدام. شماره.

پاسخ

‫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"
}

وقتی بااستفاده از API مدیریت ارسال می‌شود، این مقدار کدبندی‌شده base64 است که از آن فایل JSON کلید تولید شده است.
هیچ‌کدام. بله.