Вы просматриваете документацию Apigee Edge .
 Перейдите к документации Apigee X. информация
Версия: 1.0.0
Выполнение функций, развернутых на AWS Lambda. Используйте это расширение, чтобы перечислить функции, доступные в вашей учетной записи AWS, а затем вызвать определенные функции.
Предварительные условия
Прежде чем использовать расширение из API-прокси с помощью политики ExtensionCallout , необходимо:
Получите идентификатор ключа доступа к Amazon и секретный ключ доступа .
Они понадобятся вам вместе с названием региона, в котором развернуты ваши функции, для настройки этого расширения.
Разверните функцию Lambda. Чтобы расширение могло получить доступ к функции Lambda, оно должно быть:
- Развернуто в общедоступном VPC.
 - Развернуто в частном VPC с общедоступным шлюзом NAT.
 
Дополнительные сведения см. в разделе Настройка функции Lambda для доступа к ресурсам в Amazon VPC .
Об AWS Лямбда
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 .
| Параметр | Описание | Тип | По умолчанию | Необходимый | 
|---|---|---|---|---|
| имя функции | Имя вызываемой функции. | Нить. | Никто. | Да. | 
| тип вызова | Указывает, следует ли вызывать функцию синхронно, асинхронно или проверять значения параметров. | Нить. | Никто. | Нет. | 
| тип журнала | Необязательно указывает, следует ли возвращать последние 4 КБ данных журнала. | Нить | Никто. | Нет. | 
| квалификатор | Версия псевдонима опубликованной лямбда-функции. | Нить | Никто. | Нет. | 
| полезная нагрузка | JSON в качестве входных данных для функции Lambda. | Нить | Никто. | Нет. | 
Ответ
Массив функций, содержащий сведения об определенной версии. Ниже приведен пример:
{
  "StatusCode" : 200,
  "Payload" : "{\"statusCode\":200,\"body\":\"\\\"Hello World!\\\"\"}"
}
Свойства ответа
| Свойство | Описание | Тип | По умолчанию | 
|---|---|---|---|
| СтатусКод | Код состояния HTTP. | Целое число | Никто. | 
| Полезная нагрузка | JSON, представляющий объект, возвращаемый функцией. Присутствует, только если тип вызова — RequestResponse. В случае функциональной ошибки оно содержит сообщение с описанием ошибки. | Нить | Никто. | 
списокФункции
Перечисляет доступные функции 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 .
| Параметр | Описание | Тип | По умолчанию | Необходимый | 
|---|---|---|---|---|
| мастерРегион |  Регион (например, us-east-2 ), функции которого должны быть указаны; ALL для включения функций из любого региона. Если указано, вы также должны указать 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 вызывает, чтобы начать выполнение функции. | Нить. | Никто. | 
| ФункцияArn | Имя ресурса Amazon функции. | Нить. | Никто. | 
| ИмяФункции | Имя функции. | Нить. | Никто. | 
| Роль | Роль выполнения функции. | Нить. | Никто. | 
| Время выполнения | Среда выполнения функции. | Нить. | Никто. | 
| Версия | Версия функции. | Нить. | Никто. | 
Справочник по конфигурации
Используйте следующее при настройке и развертывании этого расширения для использования в прокси-серверах API. Инструкции по настройке расширения с помощью консоли Apigee см. в разделе Добавление и настройка расширения .
Общие свойства расширения
Следующие свойства присутствуют для каждого расширения.
| Свойство | Описание | По умолчанию | Необходимый | 
|---|---|---|---|
 name | Имя, которое вы даете этой конфигурации расширения. | Никто | Да | 
 packageName | Имя пакета расширения, предоставленное Apigee Edge. | Никто | Да | 
 version | Номер версии пакета расширения, из которого вы настраиваете расширение. | Никто | Да | 
 configuration | Значение конфигурации, относящееся к добавляемому расширению. См. Свойства этого пакета расширения. | Никто | Да | 
Свойства этого пакета расширений
Укажите значения для следующих свойств конфигурации, специфичных для этого расширения.
| Свойство | Описание | По умолчанию | Необходимый | 
|---|---|---|---|
| Регион AWS Лямбда |  Имя региона, в котором развернуты ваши функции. Например: us-east-1 . | Никто. | Да. | 
| Реквизиты для входа |  При вводе в консоли Apigee Edge это файл JSON, содержащий идентификатор вашего ключа доступа Amazon и ключ доступа в следующей форме:{"accessKeyId" : "access-key-ID","secretAccessKey" : "secret-access-key"}При отправке через API управления это значение в кодировке Base64, созданное из этого ключевого файла JSON.  | Никто. | Да. |