Mit Webhooks (zusammengesetzt aus „Web“ und „Hook“, zu deutsch etwa Web-Haken) wird ein nicht-standardisiertes Verfahren zur Kommunikation von Servern bezeichnet, das im Rahmen des verteilten Rechnens oder der Nachrichtenorientierten Middleware genutzt wird. Webhooks ermöglichen es, einer Server-Software mitzuteilen, dass ein bestimmtes Ereignis eingetreten ist und eine Reaktion auf das Ereignis auszulösen. Wenn eine Anwendung über ein eingetretenes Ereignis mittels Webhook informiert, müssen an dem Ereignis interessierte andere Anwendungen kein Polling betreiben, um von dem Ereignis Kenntnis zu erlangen. Das reduziert das Nachrichtenaufkommen zwischen den Anwendungen.
Webhooks finden als einfaches Callback-Verfahren Verwendung zur Daten-Synchronisation, externen Berechnung und zur Daten-Validierung. Technisch wird dazu eine HTTP-POST-Message an eine dafür vorbereitete URL gesendet, welche die angeforderten Daten zurückliefert.[1] Im Gegensatz zu SOAP wird keine zusätzliche Transportschicht verwendet, im Unterschied zum Atom Syndication Format sind Webhooks nicht auf das XML-Format festgelegt.
Anwendungsbeispiele
Bearbeiten- Event-Notification (Benachrichtigung): Mitteilung, dass ein bestimmtes Event eingetreten ist
- Pipes: Weiterleitung von Daten. Beispielsweise erhält ein Nutzer eine E-Mail-Benachrichtigung, wenn ein Foto zu einem bestimmten Thema hochgeladen wird.
- Plugins: Schnittstelle zur Kommunikation einer Webseite mit Plugins oder Apps.
Anwendungen
BearbeitenWebhooks werden unter anderem verwendet von[1]
|
Spezifikationen
BearbeitenDerzeit existiert kein Standard zur Implementierung. Es werden Möglichkeiten einer Spezifikation auf Basis von REST-Mustern diskutiert.
Einzelnachweise
Bearbeiten- ↑ a b Web Hooks Wiki ( vom 13. April 2012 im Internet Archive)
- ↑ https://dracoon.com
- ↑ GitHub Developer Webhooks API. Abgerufen am 8. Januar 2018.
- ↑ IFTTT Webhook. Abgerufen am 8. Januar 2018.
- ↑ Telegram BotAPI WebHooks. Abgerufen am 8. Januar 2018.
- ↑ WordPress WebHooks. Abgerufen am 8. Januar 2018.
- ↑ https://webhook.center/