Przeglądasz dokumentację Apigee Edge.
Przejdź do
Dokumentacja Apigee X. informacje.
Wersja: 1.1.2
Wykonaj funkcje wdrożone w AWS Lambda. Za pomocą tego rozszerzenia możesz wyświetlić listę funkcji dostępnych na koncie AWS, a następnie wywołać określone funkcje.
Wymagania wstępne
Zanim użyjesz rozszerzenia z serwera proxy interfejsu API za pomocą zasady ExtensionCallout, musisz:
Uzyskaj identyfikator klucza dostępu i tajny klucz dostępu Amazon.
Będą one potrzebne wraz z nazwą regionu, w którym są wdrożone funkcje, do konfigurowania tego rozszerzenia.
wdrożyć funkcję lambda, Aby rozszerzenie miało dostęp do funkcji lambda, musi:
- Wdrożono w publicznym środowisku VPC
- Wdrożono w prywatnej sieci VPC z publiczną bramą NAT
Więcej informacji znajdziesz w artykule Konfigurowanie funkcji lambda w celu uzyskiwania dostępu do zasobów w sieci VPC Amazon.
Informacje o AWS Lambda
AWS Lambda udostępnia środowiska obliczeniowe, w którym możesz uruchamiać funkcje w jednym z obsługiwanych języków.
Działania
wywołać
Wywołuje funkcję w AWS Lambda.
Więcej informacji o parametrach znajdziesz w dokumentacji AWS Lambda Invoke (w języku angielskim).
Składnia
<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>
Przykład
<Action>invoke</Action>
<Input><![CDATA[
{
"functionName" : "helloWorld",
"invocationType" : "RequestResponse",
"logType" : "None",
"qualifier" : "$LATEST",
"payload" : "{ \"key\": \"val\" }"
}
]]>
</Input>
<Output>function.response.value</Output>
Parametry żądania
Więcej informacji o parametrach znajdziesz w dokumentacji AWS Lambda Invoke (w języku angielskim).
Parametr | Opis | Typ | Domyślny | Wymagane |
---|---|---|---|---|
functionName | Nazwa funkcji do wywołania. | Ciąg tekstowy. | Brak. | Tak. |
invocationType | Określa, czy funkcja ma być wywoływana synchronicznie, asynchronicznie czy sprawdzać wartości parametrów. | Ciąg tekstowy. | Brak. | Nie. |
logType | Opcjonalnie określa, czy mają być zwracane ostatnie 4 KB danych dziennika. | Ciąg znaków | Brak. | Nie. |
kwalifikator | Wersja aliasu opublikowanej funkcji lambda. | Ciąg znaków | Brak. | Nie. |
ładunek | JSON jako danych wejściowych dla funkcji lambda. | Ciąg znaków | Brak. | Nie. |
Odpowiedź
Tablica funkcji zawierających konkretne informacje o wersji. Oto przykład:
{
"StatusCode" : 200,
"Payload" : "{\"statusCode\":200,\"body\":\"\\\"Hello World!\\\"\"}"
}
Właściwości odpowiedzi
Właściwość | Opis | Typ | Domyślny |
---|---|---|---|
StatusCode | . | Liczba całkowita | Brak. |
Ładunek | Plik JSON reprezentujący obiekt zwrócony przez funkcję. Wyświetla się tylko wtedy, gdy typem wywołania jest RequestResponse. W przypadku błędu funkcji zobaczysz komunikat z opisem błędu. | Ciąg znaków | Brak. |
listFunctions
Wyświetla listę dostępnych funkcji AWS Lambda.
Więcej informacji o parametrach znajdziesz w dokumentacji funkcji AWS Lambda ListFunctions.
Składnia
<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>
Przykład
<Action>listFunctions</Action>
<Input><![CDATA[
{
"masterRegion" : "ALL",
"functionVersion" : "ALL",
"maxItems" : 50
}
]]>
</Input>
<Output>function.list</Output>
Parametry żądania
Więcej informacji o parametrach znajdziesz w dokumentacji funkcji AWS Lambda ListFunctions.
Parametr | Opis | Typ | Domyślny | Wymagane |
---|---|---|---|---|
masterRegion | Region (np. us-east-2 ), którego funkcje powinny być wymienione; ALL , aby uwzględnić funkcje z dowolnego regionu. Jeśli została określona, musisz też podać functionVersion . |
Ciąg znaków | Brak. | Nie. |
functionVersion | Wpisz ALL , aby wyświetlić listę wszystkich opublikowanych wersji. Jeśli nie podasz żadnej wartości, zwracana będzie tylko ostatnia nieopublikowana wersja ARN. |
Ciąg znaków | Brak. | Nie. |
maxItems | Maksymalna liczba funkcji do zwrócenia w odpowiedzi. Musi być większy niż 0. Bezwzględna maksymalna liczba znaków, które można zwrócić, to 50. | Liczba całkowita | Brak. | Nie. |
Odpowiedź
Plik JSON reprezentujący tablicę funkcji zawierających szczegółowe informacje o konkretnej wersji.
[
{
"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"
}
]
Właściwości odpowiedzi
Właściwość | Opis | Typ | Domyślny |
---|---|---|---|
Opis | Opis funkcji. | Ciąg tekstowy. | Brak. |
Moduł obsługi | Funkcja, którą wywołuje lambda, aby rozpocząć wykonywanie funkcji. | Ciąg tekstowy. | Brak. |
FunctionArn | Nazwa zasobu funkcji Amazon. | Ciąg tekstowy. | Brak. |
FunctionName | Nazwa funkcji. | Ciąg tekstowy. | Brak. |
Rola | Rola wykonywania funkcji. | Ciąg tekstowy. | Brak. |
Środowisko wykonawcze | Środowisko wykonawcze funkcji. | Ciąg tekstowy. | Brak. |
Wersja | Wersja funkcji. | Ciąg tekstowy. | Brak. |
Odniesienie do konfiguracji
Podczas konfigurowania i wdrażania tego rozszerzenia na potrzeby serwerów proxy interfejsów API użyj poniższych wskazówek. Instrukcje konfigurowania rozszerzenia za pomocą konsoli Apigee znajdziesz w artykule Dodawanie i konfigurowanie rozszerzenia.
Typowe właściwości rozszerzeń
Dla każdego rozszerzenia dostępne są poniższe właściwości.
Usługa | Opis | Domyślnie | Wymagany |
---|---|---|---|
name |
Nazwa nadana konfiguracji rozszerzenia. | Brak | Tak |
packageName |
Nazwa pakietu rozszerzeń podana przez Apigee Edge. | Brak | Tak |
version |
Numer wersji pakietu rozszerzenia, z którego konfigurujesz rozszerzenie. | Brak | Tak |
configuration |
Wartość konfiguracji specyficzna dla dodawanego rozszerzenia. Zobacz Właściwości tego pakietu rozszerzeń | Brak | Tak |
Właściwości tego pakietu rozszerzeń
Określ wartości następujących właściwości konfiguracji specyficznych dla tego rozszerzenia.
Właściwość | Opis | Domyślny | Wymagane |
---|---|---|---|
Region AWS Lambda | Nazwa regionu, w którym są wdrożone Twoje funkcje. Na przykład: us-east-1 . |
Brak. | Tak. |
Dane logowania | Wpisany w konsoli Apigee Edge plik JSON zawiera identyfikator klucza dostępu Amazon oraz klucz dostępu w takim formacie:{ "accessKeyId" : "access-key-ID", "secretAccessKey" : "secret-access-key" } W przypadku wysyłania przez interfejs API zarządzania jest to wartość zakodowana w standardzie base64 wygenerowana na podstawie tego pliku JSON klucza. |
Brak. | Tak. |