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 Wert secure-always bedeutet, dass HTTPS erforderlich ist und Nicht-SSL-HTTP-Anfragen nicht unterstützt. Der Wert secure-optional bedeutet, dass sowohl HTTP als auch HTTPS unterstützt werden. Der Standardwert ist secure-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):
    1. 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):
    1. Wählen Sie im Feld Trigger die Option HTTP aus.
    2. 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.
    3. 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

  1. Öffnen Sie die Cloud Functions-Übersichtsseite in der Google Cloud Console:

    Zu Cloud Functions

  2. Klicken Sie auf den Namen der Funktion, deren URL Sie abrufen möchten.

  3. Klicken Sie auf den Tab „Bearbeiten“.

  4. Sehen Sie sich die URL der Funktion im Abschnitt Trigger an.

Nächste Schritte