Praktische Anleitungen

Webhooks und Integrationen der Website zuverlässig machen

Eine Integration braucht mehr als eine Benachrichtigung. Es muss gültige Ereignisse, Duplikate, Verzögerungen und unterbrochene Verarbeitung unterscheiden, um eine Wiederholung von Geschäftsvorgängen zu vermeiden.

Siehe die Methode

Ein Ereignis, eine Operation

Schreiben Sie den Veranstaltungsvertrag

Dokumentieren Sie den Produzenten, die erwarteten Ereignistypen, die erforderlichen Felder und den ausgelösten Betrieb. Beschreiben Sie gegebenenfalls die Ergebnisse für die Erstellung, Änderung und Löschung. Eine Benachrichtigung sollte nicht implizit jede mögliche Aktion autorisieren.

Wählen Sie einen Tracking-Identifier und eine maßgebliche Quelle, die Sie bei Unsicherheit konsultieren möchten. Beschreiben Sie, wie Fehler beim Hersteller oder Empfänger erkannt werden. Die Integrationsdokumentation enthält Regeln und Eigentümer; Geheimnisse gehören in den sicheren Mechanismus des Projekts.

Überprüfen Sie vor dem Auslösen einer Operation

GitHub dokumentiert die Validierung der Liefersignatur mit der konfigurierten geheimen und empfangenen Nutzlast. Befolgen Sie den dokumentierten Mechanismus des tatsächlichen Anbieters. Header, Algorithmen und Formate sollten nicht analog aus einem anderen Dienst kopiert werden.

Separate Herkunftsverifizierung, Schemavalidierung und Betriebsautorisierung. Testen Sie geänderten Inhalt, einen unerwarteten Ereignistyp und ein fehlendes Feld. Die Geschäftsverarbeitung sollte erst nach den für den Anwendungsfall erforderlichen Kontrollen beginnen.

Wiederholungen und Unterbrechungen planen

Definieren Sie idempotente Handhabung: Eine erkannte wiederholte Lieferung sollte nicht zwei Bestellungen oder zwei endgültige Benachrichtigungen erstellen. Testwiederholung vor, während und nach der Verarbeitung und eine Unterbrechung zwischen den Schritten. Der Mechanismus ist abhängig von der Bedienung und dem Speicher.

Überprüfen Sie die Bestell- und Neuzustellungsgarantien des Anbieters, anstatt eine sofortige, einmalige Ankunft anzunehmen. Halten Sie eine Warteschlange mit Arbeiten, die eine Überprüfung erfordern, und eine Möglichkeit, sie mit der Quelle abzugleichen. Eine positive technische Antwort sollte einem definierten Verarbeitungszustand entsprechen.

Überwachen und Wiederherstellen

Zeichnen Sie eine Ereigniskennung, einen Status und einen nützlichen Fehler auf, während Sie Daten minimieren. Definieren Sie, wer Fehler überwacht, wie autorisierte Ereignisse wiederholt werden und wie Wiederholungen das Duplizieren abgeschlossener Arbeiten vermeiden.

Unterbrechen Sie den Empfänger in einer Testumgebung und stellen Sie ihn wieder her. Überprüfen Sie die Aufholjagd und vereinbaren Sie die erwarteten Geschäftsergebnisse. Liefern Sie einen Veranstaltungsvertrag, einen Test-Batch, einen Verarbeitungsverlauf und eine Wiederherstellungsprozedur, die das Team verwenden kann.

Primärdokumentation: GitHub – Validierung von Webhook-Lieferungen.

Inhalt aktualisiert 1. Oktober 2026

Funktionale Validierungsmatrix zur Projektanpassung

Diese vorgeschlagenen Kontrollen verwenden fiktive Fälle. Entscheiden Sie, welches Verhalten mit dem Team zu erwarten ist, schreiben Sie das Ergebnis auf und weisen Sie vor der Veröffentlichung ungelöste Abweichungen zu.

Testfälle, erwartete Ergebnisse und nützliche Beweise
FallErwartetes ErgebnisBeweis zu behalten
Gültige LieferungDas zulässige Ereignis löst eine erwartete Aktion aus, die verfolgt werden kann.Lieferkennung, Verarbeitungsergebnis und daraus resultierender Geschäftszustand im Testsystem.
Changed body or invalid signatureDie Geschäftsabwicklung beginnt für das abgelehnte Ereignis nie.Beobachtete Ablehnung unter Verwendung eines vollständig synthetischen Benachrichtigungs- und Nur-Test-Verifizierungsmaterials.
Gleiche Lieferung zweimal erhaltenWiederholung schafft keinen unerwünschten zusätzlichen Geschäftsbetrieb.Anzahl und Kennungen der aufgezeichneten Operationen nach beiden kontrollierten Versuchen.
verzögerte oder umgekehrte EreignisseDie Bestellregel verhindert, dass ältere Informationen einen neueren Zustand ersetzen.kontrollierte Chronologie und dokumentierter Endzustand, einschließlich etwaiger Bestellbeschränkungen.

Häufig gestellte Fragen

Warum das gleiche Ereignis mehr als einmal in einem Test senden?

Um sicherzustellen, dass eine Wiederholung keine doppelte Geschäftstätigkeit auslöst. Anbieter können eine Neuzustellung unterstützen oder produzieren; Empfänger müssen die Regeln verstehen und den entsprechenden Verarbeitungszustand beibehalten.

Ist eine gültige Unterschrift ausreichend?

Es trägt zur Herkunfts- und Integritätsprüfung gemäß dem verwendeten Mechanismus bei. Ereignistyp, erforderliche Daten, zulässige Aktionen und Verarbeitungszustand müssen vor einem Geschäftsbetrieb noch überprüft werden.