Empfang und abgeschlossene Verarbeitung trennen
Garantien hängen vom Anbieter ab. Stripe dokumentiert mögliche Duplikate und keine garantierte Reihenfolge. Eine erfolgreiche HTTP-Antwort sollte dauerhaftem Empfang oder vorgesehener Verarbeitung entsprechen, nicht nur einer Anfrage im Arbeitsspeicher.
| Situation | Erwartetes Verhalten | Nützlicher Nachweis |
|---|---|---|
| Dasselbe Ereignis zweimal | Doppelte fachliche Wirkung verhindern. | Verarbeitete ID und dauerhaftes Ergebnis. |
| Altes Ereignis kommt später | Neueren Zustand nicht blind überschreiben. | Maßgeblicher Zustand und Übergangsregel. |
| Aufwendige Verarbeitung | Dauerhafter Empfang, danach verzögerte Arbeit. | Warteschlangenzustand und Workerergebnis. |
| Fehlende Lieferung | Nach Anbieterregeln abgleichen und nachholen. | Erkannte Lücke und geprüfte Korrektur. |
Überprüfbaren Empfang aufbauen
- Prüfen Sie HTTPS, Signatur und Replay-Schutz nach Anbieterprotokoll. Stripe prüft die Signatur am unveränderten Inhalt der Anfrage; vorherige JSON-Umwandlung kann die Prüfung ungültig machen.
- Speichern Sie Ereignis oder Verarbeitung dauerhaft vor der passenden Bestätigung. Unterscheiden Sie Lieferungs-ID, Ereignis-ID und Idempotenzschlüssel der fachlichen Aktion.
- Testen Sie Duplikate, falsche Reihenfolge, Workerunterbrechung und Neustart. Lesen Sie den maßgeblichen Objektzustand, wenn ein altes Ereignis keine sichere Entscheidung erlaubt.
Wiederaufnahme und Abgleich organisieren
Dokumentieren Sie Versuche, Fristen, offene Ereignisse und Anbieterabgleich. Eine schnelle Bestätigung kann spätere Verarbeitungsfehler verbergen. Überwachen Sie auch die endgültige Aktion und begrenzen Sie Geheimnisse und personenbezogene Daten in Protokollen.
Primärquellen
Wiederholte Webhooks sicher verarbeiten.
Eine Benachrichtigung kann nach einem Timeout oder fehlender Antwort wiederholt werden. Die Zuverlässigkeit hängt von der Ursprungsverifizierung, einer Ereigniskennung und der Verarbeitung ab, die eine neue Nachricht von einem Duplikat trennt.
- Jede Anfrage mithilfe des Mechanismus des Anbieters verifizieren.
- Wiederholungsversuche, Duplikate und geänderte Ankunftsreihenfolge testen.
- Nach der Verarbeitung oder der dauerhaften Warteschlange konsistent bestätigen.
Primärquelle: IETF RFC 9457 — Problem Details for HTTP APIs. Verwandte Methode: den praktischen Leitfaden lesen.
