Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Lambda-Funktion erstellen und verwalten URLs
Eine Funktion URL ist ein dedizierter HTTP (S) -Endpunkt für Ihre Lambda-Funktion. Sie können eine Funktion URL über die Lambda-Konsole oder das API Lambda erstellen und konfigurieren. Wenn Sie eine Funktion erstellenURL, generiert Lambda automatisch einen eindeutigen URL Endpunkt für Sie. Sobald Sie eine Funktion erstellt habenURL, ändert sich ihr URL Endpunkt nie. URLFunktionsendpunkte haben das folgende Format:
https://
<url-id>
.lambda-url.<region>.on.aws
Anmerkung
Funktionen URLs werden in den folgenden Ländern nicht unterstützt AWS-Regionen: Asien-Pazifik (Hyderabad) (ap-south-2
), Asien-Pazifik (Melbourneap-southeast-4
) (), Asien-Pazifik (Malaysiaap-southeast-5
) (), Kanada West (Calgary) (ca-west-1
), Europa (Spanien) (eu-south-2
), Europa (Zürich) (eu-central-2
), Israel (Tel Aviv) (il-central-1
) und Naher Osten (UAE) (). me-central-1
Function URLs ist Dual-Stack-fähig und unterstützt und. IPv4 IPv6 Nachdem Sie eine Funktion URL für Ihre Funktion konfiguriert haben, können Sie Ihre Funktion über ihren HTTP (S) -Endpunkt über einen Webbrowser, Curl, Postman oder einen beliebigen Client aufrufen. HTTP
Anmerkung
Sie können nur über das öffentliche Internet auf Ihre Funktion URL zugreifen. Lambda-Funktionen unterstützen zwar AWS PrivateLink, Funktionen jedoch URLs nicht.
Die Lambda-Funktion URLs verwendet ressourcenbasierte Richtlinien für Sicherheit und Zugriffskontrolle. Die Funktion unterstützt URLs auch ursprungsübergreifende Konfigurationsoptionen für die gemeinsame Nutzung von Ressourcen ()CORS.
Sie können die Funktion URLs auf jeden Funktionsalias oder auf die $LATEST
unveröffentlichte Funktionsversion anwenden. Sie können eine Funktion URL keiner anderen Funktionsversion hinzufügen.
Der folgende Abschnitt zeigt, wie Sie eine Funktion URL mithilfe der Lambda-Konsole AWS CLI, und -Vorlage erstellen und AWS CloudFormation verwalten
Themen
- Eine Funktion URL (Konsole) erstellen
- Eine Funktion erstellen URL (AWS CLI)
- Eine Funktion URL zu einer CloudFormation Vorlage hinzufügen
- Quellenübergreifende gemeinsame Nutzung von Ressourcen () CORS
- Drosselungsfunktion URLs
- Funktion wird deaktiviert URLs
- Funktion wird gelöscht URLs
- Steuern Sie den Zugriff auf Lambda-Funktions-URLs
- Lambda-Funktion aufrufen URLs
- Überwachen der Lambda-Funktions-URLs
- Tutorial: Erstellen einer Lambda-Funktion mit einer Funktions-URL
Eine Funktion URL (Konsole) erstellen
Gehen Sie wie folgt vor, um eine Funktion URL mithilfe der Konsole zu erstellen.
-
Öffnen Sie die Seite Funktionen
der Lambda-Konsole. -
Wählen Sie den Namen der Funktion, URL für die Sie die Funktion erstellen möchten.
-
Wählen Sie die Registerkarte Konfiguration und dann Funktion URL.
-
Wählen Sie Funktion erstellenURL aus.
-
Wählen Sie als Authentifizierungstyp AWS_IAModer NONE. Weitere Hinweise zur URL Funktionsauthentifizierung finden Sie unterZugriffskontrolle.
-
(Optional) Wählen Sie Quellübergreifende Ressourcenfreigabe konfigurieren (CORS) aus und konfigurieren Sie dann die CORS Einstellungen für Ihre FunktionURL. Weitere Informationen zu finden Sie CORS unterQuellenübergreifende gemeinsame Nutzung von Ressourcen () CORS.
-
Wählen Sie Save (Speichern) aus.
Dadurch wird eine Funktion URL für die $LATEST
unveröffentlichte Version Ihrer Funktion erstellt. Die Funktion URL wird im Bereich Funktionsübersicht der Konsole angezeigt.
-
Öffnen Sie die Seite Funktionen
der Lambda-Konsole. -
Wählen Sie den Namen der Funktion mit dem Alias, URL für den Sie die Funktion erstellen möchten.
-
Wählen Sie die Registerkarte Aliase und dann den Namen des Alias aus, URL für den Sie die Funktion erstellen möchten.
-
Wählen Sie die Registerkarte Konfiguration und dann Funktion URL aus.
-
Wählen Sie Funktion erstellenURL aus.
-
Wählen Sie als Authentifizierungstyp AWS_IAModer NONE. Weitere Hinweise zur URL Funktionsauthentifizierung finden Sie unterZugriffskontrolle.
-
(Optional) Wählen Sie Quellübergreifende Ressourcenfreigabe konfigurieren (CORS) aus und konfigurieren Sie dann die CORS Einstellungen für Ihre FunktionURL. Weitere Informationen zu finden Sie CORS unterQuellenübergreifende gemeinsame Nutzung von Ressourcen () CORS.
-
Wählen Sie Save (Speichern) aus.
Dadurch wird eine Funktion URL für Ihren Funktionsalias erstellt. Die Funktion URL wird im Abschnitt Funktionsübersicht der Konsole für Ihren Alias angezeigt.
Um eine neue Funktion mit einer Funktion URL (Konsole) zu erstellen
-
Öffnen Sie die Seite Funktionen
der Lambda-Konsole. -
Wählen Sie Funktion erstellen aus.
-
Führen Sie unter Basic information (Grundlegende Informationen) die folgenden Schritte aus:
-
Geben Sie unter Funktionsname einen Namen für Ihre Funktion ein, z. B.
my-function
. -
Wählen Sie für Runtime (Laufzeit) die bevorzugte Sprachlaufzeit aus, z. B. Node.js 18.x.
-
Wählen Sie für Architecture (Architektur) entweder x86_64 oder arm64 aus.
-
Erweitern Sie Permissions (Berechtigungen) und wählen Sie dann aus, ob eine neue Ausführungsrolle erstellt oder eine vorhandene Rolle verwendet werden soll.
-
-
Erweitern Sie Erweiterte Einstellungen und wählen Sie dann Funktion ausURL.
-
Wählen Sie als Authentifizierungstyp AWS_IAModer NONE. Weitere Hinweise zur URL Funktionsauthentifizierung finden Sie unterZugriffskontrolle.
-
(Optional) Wählen Sie Quellenübergreifende Ressourcenfreigabe konfigurieren (CORS) aus. Wenn Sie diese Option bei der Funktionserstellung auswählen, URL lässt Ihre Funktion standardmäßig Anfragen aller Herkunft zu. Sie können die CORS Einstellungen für Ihre Funktion bearbeiten, URL nachdem Sie die Funktion erstellt haben. Weitere Informationen zu finden CORS Sie unterQuellenübergreifende gemeinsame Nutzung von Ressourcen () CORS.
-
Wählen Sie Funktion erstellen aus.
Dadurch wird eine neue Funktion mit einer Funktion URL für die $LATEST
unveröffentlichte Version der Funktion erstellt. Die Funktion URL wird im Bereich Funktionsübersicht der Konsole angezeigt.
Eine Funktion erstellen URL (AWS CLI)
Führen Sie den folgenden Befehl aus, um mit der AWS Command Line Interface (AWS CLI) eine Funktion URL für eine bestehende Lambda-Funktion zu erstellen:
aws lambda create-function-url-config \ --function-name
my-function
\ --qualifierprod
\ // optional --auth-typeAWS_IAM
--cors-config{AllowOrigins="https://example.com"}
// optional
Dadurch wird dem prod
Qualifier für URL die Funktion eine Funktion hinzugefügt. my-function
Weitere Informationen zu diesen Konfigurationsparametern finden Sie CreateFunctionUrlConfigin der API Referenz.
Anmerkung
Um eine Funktion URL über die zu erstellen AWS CLI, muss die Funktion bereits existieren.
Eine Funktion URL zu einer CloudFormation Vorlage hinzufügen
Verwenden Sie die folgende Syntax, um Ihrer AWS CloudFormation Vorlage eine AWS::Lambda::Url
Ressource hinzuzufügen:
JSON
{ "Type" : "AWS::Lambda::Url", "Properties" : { "AuthType" : String, "Cors" : Cors, "Qualifier" : String, "TargetFunctionArn" : String } }
YAML
Type: AWS::Lambda::Url Properties: AuthType: String Cors: Cors Qualifier: String TargetFunctionArn: String
Parameter
(Erforderlich)
AuthType
— Definiert die Art der Authentifizierung für Ihre FunktionURL. Die möglichen Werte sindAWS_IAM
oderNONE
. Um den Zugriff nur auf authentifizierte Benutzer zu beschränken, setzen Sie den Wert aufAWS_IAM
. Um die IAM Authentifizierung zu umgehen und es jedem Benutzer zu ermöglichen, Anfragen an Ihre Funktion zu stellen, setzen Sie aufNONE
.-
(Optional)
Cors
— Definiert die CORSEinstellungen für Ihre FunktionURL. Verwenden SieCors
die folgende Syntax CloudFormation, um IhrerAWS::Lambda::Url
Ressource etwas hinzuzufügen.Beispiel AWS: :Lambda: :Url.Cors () JSON
{ "AllowCredentials" : Boolean, "AllowHeaders" : [ String, ... ], "AllowMethods" : [ String, ... ], "AllowOrigins" : [ String, ... ], "ExposeHeaders" : [ String, ... ], "MaxAge" : Integer }
Beispiel AWS: :Lambda: :Url.Cors () YAML
AllowCredentials: Boolean AllowHeaders: - String AllowMethods: - String AllowOrigins: - String ExposeHeaders: - String MaxAge: Integer
(Optional)
Qualifier
– Der Aliasname.(Erforderlich)
TargetFunctionArn
— Der Name oder der Amazon-Ressourcenname (ARN) der Lambda-Funktion. Gültige Namensformate sind unter anderem:Funktionsname –
my-function
.Funktion ARN —
arn:aws:lambda:us-west-2:123456789012:function:my-function
Teilweise ARN —
123456789012:function:my-function
Quellenübergreifende gemeinsame Nutzung von Ressourcen () CORS
Um zu definieren, wie verschiedene Quellen auf Ihre Funktion zugreifen könnenURL, verwenden Sie Cross-Origin Resource Sharing () CORS
CORSKopfzeile | CORSKonfigurationseigenschaft | Beispielwerte |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Wenn Sie URL mit der Lambda-Konsole oder der eine Funktion konfigurieren CORS AWS CLI, fügt Lambda über die Funktion automatisch die CORS Header zu allen Antworten hinzu. URL Alternativ können Sie Ihrer Funktionsantwort manuell CORS Header hinzufügen. Bei widersprüchlichen Headern hängt das erwartete Verhalten von der Art der Anfrage ab:
-
Bei Preflight-Anfragen wie OPTIONS Anfragen haben die konfigurierten CORS Header der Funktion Vorrang. URL Lambda gibt in der Antwort nur diese CORS Header zurück.
-
Für Nicht-Preflight-Anfragen wie GET POST OR-Anfragen gibt Lambda sowohl die konfigurierten CORS Header der Funktion als auch die von der Funktion URL zurückgegebenen CORS Header zurück. Dies kann zu doppelten CORS Headern in der Antwort führen. Möglicherweise wird ein Fehler ähnlich dem folgenden angezeigt:
The 'Access-Control-Allow-Origin' header contains multiple values '*, *', but only one is allowed
.
Im Allgemeinen empfehlen wir, alle CORS Einstellungen der Funktion zu konfigurierenURL, anstatt CORS Header manuell in der Funktionsantwort zu senden.
Drosselungsfunktion URLs
Die Drosselungsrate begrenzt die Geschwindigkeit, mit der Ihre Funktion Anfragen verarbeitet. Dies ist in vielen Situationen nützlich, z. B. um zu verhindern, dass Ihre Funktion nachgelagerte Ressourcen überlastet, oder beim Verarbeiten eines plötzlichen Anstiegs der Anfragen.
Sie können die Rate der Anfragen, die Ihre Lambda-Funktion über eine Funktion verarbeitet, drosseln, URL indem Sie reservierte Parallelität konfigurieren. Reservierte Gleichzeitigkeit begrenzt die Anzahl der maximalen gleichzeitigen Aufrufe für Ihre Funktion. Die maximale Anforderungsrate pro Sekunde (RPS) Ihrer Funktion entspricht dem Zehnfachen der konfigurierten reservierten Parallelität. Wenn Sie Ihre Funktion beispielsweise mit einer reservierten Parallelität von 100 konfigurieren, RPS beträgt der Höchstwert 1.000.
Immer wenn die Parallelität Ihrer Funktion die reservierte Parallelität überschreitet, gibt Ihre Funktion einen URL HTTP 429
Statuscode zurück. Wenn Ihre Funktion aufgrund Ihrer konfigurierten reservierten Parallelität eine Anforderung empfängt, die das 10-fache RPS Maximum überschreitet, erhalten Sie ebenfalls eine Fehlermeldung. HTTP 429
Weitere Hinweise zur reservierten Gleichzeitigkeit finden Sie unter Reservierte Parallelität für eine Funktion konfigurieren.
Funktion wird deaktiviert URLs
In einem Notfall möchten Sie möglicherweise den gesamten Datenverkehr zu Ihrer Funktion URL zurückweisen. Um Ihre Funktion zu deaktivierenURL, setzen Sie die reservierte Parallelität auf Null. Dadurch werden alle Anfragen an Ihre Funktion gedrosseltURL, was zu Statusantworten führt. HTTP 429
Um Ihre Funktion wieder zu aktivierenURL, löschen Sie die reservierte Parallelitätskonfiguration oder setzen Sie die Konfiguration auf einen Wert größer als Null.
Funktion wird gelöscht URLs
Wenn Sie eine Funktion löschenURL, können Sie sie nicht wiederherstellen. Das Erstellen einer neuen Funktion URL führt zu einer anderen URL Adresse.
Anmerkung
Wenn Sie eine Funktion URL mit dem Authentifizierungstyp löschenNONE
, löscht Lambda die zugehörige ressourcenbasierte Richtlinie nicht automatisch. Wenn Sie diese Richtlinie löschen möchten, müssen Sie dies manuell tun.
-
Öffnen Sie die Seite Funktionen
der Lambda-Konsole. -
Wählen Sie den Namen einer Funktion aus.
-
Wählen Sie die Registerkarte Konfiguration und dann Funktion aus. URL
-
Wählen Sie Löschen.
-
Geben Sie den Ausdruck delete (löschen) in das Feld ein, um den Löschvorgang zu bestätigen.
-
Wählen Sie Löschen.
Anmerkung
Wenn Sie eine Funktion löschen, die eine Funktion hatURL, löscht Lambda die Funktion asynchron. URL Wenn Sie sofort eine neue Funktion mit demselben Namen in demselben Konto erstellen, ist es möglich, dass die ursprüngliche Funktion der neuen Funktion zugeordnet und nicht gelöscht URL wird.