HTTP-Trigger
In Cloud Functions ermöglicht ein HTTP-Trigger die Ausführung einer Funktion als Reaktion auf HTTP(S)-Anfragen. Wenn Sie einen HTTP-Trigger für eine Funktion angeben, wird der Funktion eine URL zugewiesen, unter der sie Anfragen empfangen kann. HTTP-Trigger unterstützen die Anfragemethoden GET
, POST
, PUT
, DELETE
und OPTIONS
.
In Cloud Functions (2. Generation) sind für Anfragen an eine Funktions-URL immer HTTPS erforderlich. In Cloud Functions (1. Generation) können Sie auswählen, ob HTTPS während der Bereitstellung benötigt wird.
Standardmäßig ist für Anfragen an eine Funktion mit einem HTTP-Trigger eine Authentifizierung erforderlich. Sie können nicht authentifizierte Aufrufe während der Bereitstellung zulassen. Weitere Informationen finden Sie unter Nicht authentifizierter HTTP-Funktionsaufruf zulassen.
Mit HTTP-Funktionen implementieren Sie Cloud Functions, die allgemeine HTTP(S)-Anfragen verarbeiten können.
Deployment
Sie können beim Bereitstellen einer Funktion einen HTTP-Trigger angeben. Allgemeine Anleitungen zum Bereitstellen einer Funktion finden Sie unter Cloud Functions-Funktion bereitstellen. In diesem Abschnitt finden Sie zusätzliche Informationen zum Konfigurieren von HTTP-Triggern während der Bereitstellung.
gcloud
Wenn Sie die gcloud CLI bereitstellen, werden die hier aufgeführten Flags zum Konfigurieren von HTTP-Triggern verwendet:
gcloud functions deploy YOUR_FUNCTION_NAME \ --trigger-http \ [--allow-unauthenticated] \ [--security-level=SECURITY_LEVEL] \ ...
- Das Flag
--trigger-http
gibt an, dass die Funktion einen HTTP-Trigger verwendet. - Das Flag
--allow-unauthenticated
gibt an, dass die Funktion ohne Authentifizierung aufgerufen werden kann. Wenn Sie dieses Flag weglassen, erfordert die Funktion die Authentifizierung, die Standardeinstellung ist. Weitere Informationen finden Sie unter Für Aufruf authentifizieren. - (1. Generation) Das Flag
--security-level
steuert, ob der Funktionsendpunkt HTTPS erfordert. Der Wertsecure-always
bedeutet, dass HTTPS erforderlich ist und Nicht-SSL-HTTP-Anfragen nicht unterstützt. Der Wertsecure-optional
bedeutet, dass sowohl HTTP als auch HTTPS unterstützt werden. Der Standardwert istsecure-always
.
Console
Wenn Sie die Bereitstellung mit der Google Cloud Console ausführen, können Sie im Abschnitt Trigger einen HTTP-Trigger konfigurieren.
- Für Cloud Functions (2. Generation):
- Wählen Sie unter HTTPS im Feld Authentifizierung eine Option aus, je nachdem, ob Sie nicht authentifizierte Aufrufe der Funktion zulassen möchten. Standardmäßig ist eine Authentifizierung erforderlich. Weitere Informationen finden Sie unter Für Aufruf authentifizieren.
- Für Cloud Functions (1. Generation):
- Wählen Sie im Feld Trigger die Option HTTP aus.
- Wählen Sie im Feld Authentifizierung eine Option aus, je nachdem, ob Sie nicht authentifizierte Aufrufe der Funktion zulassen möchten. Standardmäßig ist eine Authentifizierung erforderlich. Weitere Informationen finden Sie unter Für Aufruf authentifizieren.
- Aktivieren oder deaktivieren Sie das Kästchen HTTPS erforderlich, um zu steuern, ob für den Funktionsendpunkt HTTPS erforderlich ist. Wenn die Auswahl aufgehoben ist, werden sowohl HTTP als auch HTTPS unterstützt.
Funktions-URL
Nachdem die Funktion mit einem HTTP-Trigger bereitgestellt wurde, können Sie die zugewiesene URL abrufen.
Sowohl Funktionen der 1. als auch der 2. Generation wurden URLs zugewiesen, die das folgende Format haben. Diese URLs haben ein deterministisches Format. Das bedeutet, dass Sie vorhersagen können, was die URL sein wird, bevor Sie die Funktion bereitstellen:
https://REGION-PROJECT_ID.cloudfunctions.net/FUNCTION_NAME
Funktionen der zweiten Generation ist außerdem eine URL zugewiesen, die dem zugrunde liegenden Cloud Run-Dienst zugeordnet ist. Diese URLs haben kein deterministisches Format. Das heißt, da das zweite Feld ein zufälliger Hash ist, können Sie nicht vorhersagen, was die URL sein wird, bevor Sie die Funktion bereitstellen. Nach der Bereitstellung der Funktion bleibt die URL stabil, aber:
https://FUNCTION_NAME-RANDOM_HASH-REGION.a.run.app
Die URL cloudfunctions.net
und die URL run.app
einer Funktion der 2. Generation verhalten sich genau gleich. Sie sind austauschbar.
Sie können die URL(s) Ihrer Funktion so abrufen:
gcloud
Für Cloud Functions (2. Generation):
gcloud functions describe YOUR_FUNCTION_NAME \ --gen2 \ --region=YOUR_FUNCTION_REGION \ --format="value(serviceConfig.uri)"
Für Cloud Functions (1. Generation):
gcloud functions describe YOUR_FUNCTION_NAME \ --format="value(httpsTrigger.url)"
Console
Öffnen Sie die Cloud Functions-Übersichtsseite in der Google Cloud Console:
Klicken Sie auf den Namen der Funktion, deren URL Sie abrufen möchten.
Klicken Sie auf den Tab „Bearbeiten“.
Sehen Sie sich die URL der Funktion im Abschnitt Trigger an.
Nächste Schritte
- Erfahren Sie mehr über das Schreiben von HTTP-Funktionen.
- Erfahren SIe ,mehr über das Bereitstellen einer Cloud Functions-Funktion.
- Die Anleitung zu HTTP-Funktionen enthält ein Beispiel für das Schreiben, Bereitstellen und Aufrufen einer HTTP-Funktion.