Sie sehen sich die Dokumentation zu Apigee Edge an.
Sehen Sie sich die Apigee X-Dokumentation an. info
Version: 2.0.0
Ausführen von Funktionen, die auf AWS Lambda bereitgestellt wurden. Mit dieser Erweiterung können Sie die in Ihrem AWS-Konto verfügbaren Funktionen auflisten und dann bestimmte Funktionen aufrufen.
Vorbereitung
Bevor Sie die Erweiterung über einen API-Proxy mit der ExtensionCallout-Richtlinie verwenden können, müssen Sie Folgendes tun:
Rufen Sie Ihre Zugriffsschlüssel-ID und Ihren geheimen Zugriffsschlüssel ab.
Sie benötigen diese zusammen mit dem Namen der Region, in der Ihre Funktionen bereitgestellt werden, um diese Erweiterung zu configure.
Stellen Sie Ihre Lambda-Funktion bereit. Damit die Erweiterung auf eine Lambda-Funktion zugreifen kann, muss sie entweder
- In einer öffentlichen VPC bereitgestellt
- In einer privaten VPC mit öffentlichem NAT-Gateway bereitgestellt
Weitere Informationen finden Sie unter Lambda-Funktion für den Zugriff auf Ressourcen in einer Amazon VPC konfigurieren.
Informationen zu AWS Lambda
AWS Lambda bietet Computing-Umgebungen, in denen Sie Funktionen in einer der unterstützten Sprachen ausführen können.
Aktionen
aufrufen
Ruft eine Funktion auf AWS Lambda auf.
Weitere Informationen zu Parametern finden Sie in der AWS Lambda Invoke-Dokumentation.
Syntax
<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>
Beispiel
<Action>invoke</Action>
<Input><![CDATA[
{
"functionName" : "helloWorld",
"invocationType" : "RequestResponse",
"logType" : "None",
"qualifier" : "$LATEST",
"payload" : "{ \"key\": \"val\" }"
}
]]>
</Input>
<Output>function.response.value</Output>
Anfrageparameter
Weitere Informationen zu Parametern finden Sie in der AWS Lambda Invoke-Dokumentation.
Parameter | Beschreibung | Typ | Standard | Erforderlich |
---|---|---|---|---|
functionName | Der Name der aufzurufenden Funktion. | String. | Keine. | Ja. |
invocationType | Gibt an, ob die Funktion synchron oder asynchron aufgerufen oder Parameterwerte validiert werden sollen. | String. | Keine. | Nein. |
logType | Optional gibt an, ob die letzten 4 KB der Protokolldaten zurückgegeben werden sollen. | String | Keine. | Nein. |
Qualifier | Die Version des Alias einer veröffentlichten Lambda-Funktion. | String | Keine. | Nein. |
payload | JSON als Eingabe für die Lambda-Funktion. | String | Keine. | Nein. |
Antwort
Ein Array von Funktionen mit spezifischen Versionsdetails. Hier ein Beispiel:
{
"StatusCode" : 200,
"Payload" : "{\"statusCode\":200,\"body\":\"\\\"Hello World!\\\"\"}"
}
Antworteigenschaften
Attribut | Beschreibung | Typ | Standard |
---|---|---|---|
StatusCode | HTTP-Statuscode. | Ganzzahl | Keine. |
Nutzlast | JSON, das das von der Funktion zurückgegebene Objekt darstellt. Nur vorhanden, wenn der Aufruftyp „RequestResponse“ ist. Bei einem Funktionsfehler enthält diese Nachricht eine Fehlerbeschreibung. | String | Keine. |
listFunctions
Hier werden die verfügbaren AWS Lambda-Funktionen aufgeführt.
Weitere Informationen zu Parametern finden Sie in der ListFunctions-Dokumentation für AWS Lambda.
Syntax
<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>
Beispiel
<Action>listFunctions</Action>
<Input><![CDATA[
{
"masterRegion" : "ALL",
"functionVersion" : "ALL",
"maxItems" : 50
}
]]>
</Input>
<Output>function.list</Output>
Anfrageparameter
Weitere Informationen zu Parametern finden Sie in der ListFunctions-Dokumentation für AWS Lambda.
Parameter | Beschreibung | Typ | Standard | Erforderlich |
---|---|---|---|---|
masterRegion | Die Region (z. B. us-east-2 ), deren Funktionen aufgeführt werden sollen. Geben Sie ALL an, um Funktionen aus allen Regionen aufzunehmen. Wenn angegeben, müssen Sie auch functionVersion angeben. |
String | Keine. | Nein. |
functionVersion | Geben Sie ALL an, um alle veröffentlichten Versionen aufzulisten. Wenn nichts angegeben ist, wird nur die ARN der neuesten nicht veröffentlichten Version zurückgegeben. |
String | Keine. | Nein. |
maxItems | Die maximale Anzahl von Funktionen, die in der Antwort zurückgegeben werden sollen. Muss größer als 0 sein. Maximal können 50 zurückgegeben werden. | Ganzzahl | Keine. | Nein. |
Antwort
JSON, das ein Array von Funktionen mit bestimmten Versionsdetails darstellt.
[
{
"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"
}
]
Antworteigenschaften
Attribut | Beschreibung | Typ | Standard |
---|---|---|---|
Beschreibung | Eine Beschreibung der Funktion. | String. | Keine. |
Handler | Die Funktion, die von Lambda aufgerufen wird, um mit der Ausführung der Funktion zu beginnen. | String. | Keine. |
FunctionArn | Der Amazon Resource Name (ARN) der Funktion. | String. | Keine. |
FunctionName | Der Name der Funktion. | String. | Keine. |
Rolle | Die Ausführungsrolle der Funktion. | String. | Keine. |
Laufzeit | Die Laufzeitumgebung der Funktion. | String. | Keine. |
Version | Die Version der Funktion. | String. | Keine. |
Konfigurationsreferenz
Beachten Sie Folgendes, wenn Sie diese Erweiterung für die Verwendung in API-Proxys konfigurieren und bereitstellen. Eine Anleitung zum Konfigurieren einer Erweiterung mit der Apigee Console finden Sie unter Erweiterung hinzufügen und konfigurieren.
Gängige Erweiterungseigenschaften
The following properties are present for every extension.
Property | Description | Default | Required |
---|---|---|---|
name |
Name you're giving this configuration of the extension. | None | Yes |
packageName |
Name of the extension package as given by Apigee Edge. | None | Yes |
version |
Version number for the extension package from which you're configuring an extension. | None | Yes |
configuration |
Configuration value specific to the extension you're adding. See Properties for this extension package | None | Yes |
Properties für dieses Erweiterungspaket
Geben Sie Werte für die folgenden Konfigurationseigenschaften an, die für diese Erweiterung spezifisch sind.
Attribut | Beschreibung | Standard | Erforderlich |
---|---|---|---|
AWS Lambda-Region | Der Name der Region, in der Ihre Funktionen bereitgestellt werden. Beispiel: us-east-1 . |
Keine. | Ja. |
Anmeldedaten | Wenn Sie diese Informationen in die Apigee Edge-Konsole eingeben, handelt es sich um eine JSON-Datei mit Ihrer Amazon-Zugriffsschlüssel-ID und Ihrem Zugriffsschlüssel im folgenden Format:{ "accessKeyId" : "access-key-ID", "secretAccessKey" : "secret-access-key" } Wenn die Informationen über die Verwaltungs-API gesendet werden, handelt es sich um einen base64-codierten Wert, der aus dieser JSON-Schlüsseldatei generiert wird. |
Keine. | Ja. |