CloudFront -Ereignisse, die eine Lambda@Edge-Funktion auslösen können - Amazon CloudFront

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.

CloudFront -Ereignisse, die eine Lambda@Edge-Funktion auslösen können

Für jedes Cache-Verhalten in einer CloudFront Verteilung können Sie bis zu vier Auslöser (Zuordnungen) hinzufügen, die dazu führen, dass eine Lambda-Funktion ausgeführt wird, wenn bestimmte CloudFront Ereignisse auftreten. CloudFront -Auslöser können auf einem von vier CloudFront Ereignissen basieren, wie im folgenden Diagramm gezeigt.


					Konzeptionelle Grafik, die  CloudFront Auslöserereignisse für Lambda-Funktionen zeigt, die in integriert sindCloudFront.

Die CloudFront Ereignisse, die zum Auslösen von Lambda@Edge-Funktionen verwendet werden können, sind die folgenden:

Viewer-Anforderung

Die Funktion wird ausgeführt, wenn eine Anfrage von einem Viewer CloudFront empfängt, bevor geprüft wird, ob sich das angeforderte Objekt im CloudFront Cache befindet.

Ursprungsanfrage

Die Funktion wird nur ausgeführt, wenn eine Anforderung an Ihren Ursprung CloudFront weiterleitet. Wenn sich das angeforderte Objekt im CloudFront Cache befindet, wird die Funktion nicht ausgeführt.

Ursprungsantwort

Die Funktion wird ausgeführt, nachdem eine Antwort vom Ursprung CloudFront empfangen hat und bevor das Objekt in der Antwort zwischengespeichert wird. Beachten Sie, dass die Funktion auch dann ausgeführt wird, wenn ein Fehler vom Ursprung zurückgegeben wird.

Die Funktion wird in den folgenden Fällen nicht ausgeführt:

  • Wenn sich die angeforderte Datei im CloudFront Cache befindet und nicht abgelaufen ist.

  • Wenn die Antwort von einer Funktion generiert wird, die von einem Ursprungs-Anforderungsereignis ausgelöst wurde.

Viewer-Antwort

Diese Funktion wird ausgeführt, bevor die angeforderte Datei an den Viewer zurückgegeben wird. Beachten Sie, dass die Funktion unabhängig davon, ob sich die Datei bereits im CloudFront-Cache befindet, ausgeführt wird.

Die Funktion wird in den folgenden Fällen nicht ausgeführt:

  • Wenn der Ursprung den HTTP-Statuscode „400“ oder höher zurückgibt.

  • Wenn eine benutzerdefinierte Fehlerseite zurückgesendet wird.

  • Wenn die Antwort von einer Funktion generiert wird, die von einem Viewer-Anforderungsereignis ausgelöst wurde.

  • Wenn CloudFront automatisch eine HTTP-Anforderung an HTTPS umleitet (wenn der Wert von HTTP an HTTPS umleiten Viewer-Protokollrichtlinien ist).

Wenn Sie einem Cache-Verhalten mehrere Auslöser hinzufügen, können diese jeweils dieselbe oder verschiedene Funktionen für jeden Auslöser ausführen. Sie können Funktionen auch in mehreren Verteilungen zuweisen.

Anmerkung

Wenn ein CloudFront Ereignis die Ausführung einer Lambda-Funktion auslöst, muss die Funktion beendet werden, bevor fortgesetzt werden CloudFront kann. Wenn beispielsweise eine Lambda-Funktion durch ein CloudFront Betrachteranfrageereignis ausgelöst wird, CloudFront gibt keine Antwort an den Betrachter zurück oder leitet die Anfrage an den Ursprung weiter, bis die Ausführung der Lambda-Funktion abgeschlossen ist. Dies bedeutet, dass jede Anforderung, die eine Lambda-Funktion auslöst, die Latenz für die Anforderung erhöht. Daher sollte die Funktion so schnell wie möglich arbeiten.