Benutzerdefinierte Handler

Abgeschlossen

Azure Functions unterstützt Runtimes für eine Vielzahl von Sprachen. Wenn die von Ihnen gewählte Sprache nicht standardmäßig zur Verfügung steht, können Sie einen benutzerdefinierten Handler verwenden.

Was sind benutzerdefinierte Handler?

Im Kern ist ein benutzerdefinierter Handler ein Webserver. Der Webserver empfängt Ereignisse vom Functions-Host. Anschließend haben Sie die Möglichkeit, Code in Ihrer bevorzugten Sprache zu schreiben, um auf die Ereignisse zu reagieren.

Mit benutzerdefinierten Handlern können Sie jede Sprache verwenden, die HTTP-Primitive unterstützt. Das trifft auf fast jede Sprache zu.

Wichtige Konzepte und Ablauf

Azure Functions verfügt über drei zentrale Konzepte, die sie verstehen müssen:

  • Trigger: Ein Trigger ist ein Ereignis, das mit der Ausführung einer Funktion beginnt. Beispiele für häufige Trigger sind HTTP-Anforderungen, neue Warteschlangennachrichten und Änderungen an einer Datenbank. Die Auswahl des richtigen Triggers ist wichtig, um zu entscheiden, wie Ihre Funktion ausgeführt wird.
  • Bindungen. Bindungen sind Hilfsprogrammcode, der Ihre Funktion mit einem anderen Clouddienst verbindet. Sowohl Eingabe- als auch Ausgabebindungen sind verfügbar, um Daten in und aus Ihrer Funktion zu übergeben.
  • Functions-Host. Der Functions-Host steuert den Anwendungsereignisfluss. Während der Host Ereignisse erfasst, ruft er den Handler auf und ist für die Rückgabe der Antwort einer Funktion verantwortlich.

Der Ablauf sieht von Anfang bis Ende wie folgt aus:

Diagram that shows an overview of custom handlers.

Die folgenden Aktionen beschreiben, wie eine Anforderung über den Functions-Host und einen benutzerdefinierten Handler verarbeitet wird:

  1. Wenn ein Ereignis auftritt, das einem Trigger entspricht (z. B. eine HTTP-Anforderung), wird eine Anforderung an den Functions-Host gesendet.
  2. Der Functions-Host erstellt Anforderungsnutzdaten und sendet diese an den Webserver (benutzerdefinierter Handler). Die Nutzlast enthält Informationen über den Trigger, Eingabebindungsdaten und andere Metadaten.
  3. Die Funktion führt Ihre Logik aus, und eine Antwort wird zurück an den Functions-Host gesendet.
  4. Der Functions-Host übergibt ausgehende Daten zur Verarbeitung an die Ausgabebindung einer Funktion.