Erstellen einer Funktion, die durch einen Webhook ausgelöst wird
Sie haben sich dazu entschieden, das firmeneigene GitHub-Wiki mithilfe von Azure Functions auf Aktualisierungen zu überwachen. Jedes Mal, wenn die Wiki aktualisiert wird, möchten Sie eine Funktion auslösen können, die die Details des Updates wie z. B. die Aktualisierung eines Datums, den Namen eines Mitwirkenden etc. verarbeiten kann. Zunächst müssen Sie eine Azure-Funktions-App erstellen, die eine von einem Webhook ausgelöste Funktion enthält.
In dieser Lerneinheit erfahren Sie mehr über die Vorteile der Verwendung von Webhooks und wie Sie eine Azure-Funktion mithilfe eines Webhooks auslösen können.
Was ist ein Webhook?
Webhooks sind benutzerdefinierte HTTP-Rückrufe. Sie werden durch ein Ereignis, wie z. B. das Übertragen von Code an ein Repository oder das Aktualisieren einer Wikiseite, ausgelöst. Wenn das Ereignis auftritt, wird am Quellstandort eine HTTP-Anforderung an die URL für den Webhook konfiguriert. Mit Azure Functions können Sie Logik in einer Funktion definieren, die ausgeführt wird, wenn eine Webhooknachricht empfangen wird.
Webhooks in einer DevOps-Umgebung werden oft dafür verwendet, eine Azure-Funktion zu benachrichtigen, dass sich der Code oder die Konfiguration für eine Anwendung auf GitHub geändert hat. Die Nutzlast der über den Webhook gesendeten Nachricht enthält die Details des Ereignisses. Sie können den Webhook mit einer Funktion zum Ausführen einer Aufgabe wie etwa dem Bereitstellen der aktualisierten Version der Anwendung verwenden.
Was ist Azure Functions?
Azure Functions ist ein serverloser Computedienst. Mit ihm können Sie Code ausführen, ohne eine Infrastruktur explizit bereitstellen oder verwalten zu müssen. Sie können Azure Functions zum Ausführen von Skripts oder Code als Reaktion auf verschiedene Ereignisse verwenden.
Ein Trigger sorgt dafür, dass eine Funktion ausgeführt wird. Ein Trigger definiert, wie eine Funktion aufgerufen wird. Eine Funktion darf nur genau einen Trigger haben. Trigger weisen zugeordnete Daten auf, die oftmals als Nutzlast der Funktion übergeben werden.
Zum Verbinden einer Ressource mit einer Funktion wird eine Bindung verwendet. Sie können Eingabe- und Ausgabebindungen definieren. Daten von einer Bindung werden der Funktion als Parameter bereitgestellt. Beispielsweise können Sie eine Datenbank über eine Bindung mit dem Azure Functions-Code verbinden. Dann müssen Sie die Datenbank nicht mit einem beliebigen Verbindungscode mit der Funktion verbinden. Bindungen sind optional, und eine Funktion kann mehrere Eingabe- und/oder Ausgabebindungen haben.