SelSup Developers

Sonundan sonuna iş akışı · Rehberler

Webhooks ve etkinlik odaklı entegrasyon

Dışarı çıkış webhook kurulum, güvenli bir alıcı, kopya koruma ve API aracılığıyla kayıp olayların kurtarılması.

5 bölümlerGeliştiriciler rehberi

Webhooks değişim gecikmesini azaltır, ancak gerçeğin kaynağını değiştirmez. Alıcılar idempotent olmalıdır ve periyodik uzlaşma hâlâ gereklidir.

Olaylara dayalı entegrasyonlar ve arka uç hizmetler

01

Olayları ve mülkiyetleri tanımlamak

Yeni veya değiştirilmiş bir sipariş, stok değişikliği veya fiyat değişikligi gibi bir iş etkinliği ile başlayın.

Webhook'un orijinal payload'unu normal modelinizden ayrı olarak sınırlı bir süre için tutun.

Yeni bir seçeneği alan bilinen bir olay yapısının analizini kırmamalıdır.

02

Güvenli bir HTTP alıcı oluştur

  1. 1

    İstek kısıtlı

    Sadece gerekli yöntemleri ve içerik türlerini kabul edin, vücut boyutunuzu sınırlayın ve kısa bir okuma süresi kullanın.

  2. 2

    Kaynak doğrulanması

    Listelenmemiş bir URL veya yapılandırılabilir başlıkta bir sır kullanın ve API-gateway filtresini ekleyin. Yalnızca User-Agent'e güvenmeyin.

  3. 3

    Olay devam etsin .

    Faydalı yük ve kopyalanma anahtarını tek bir işlemde saklayın, sonra hızlı bir şekilde başarılı bir yanıt gönderin.

  4. 4

    İşlem asinkron

    Giren HTTP talebi yerine ERP, WMS ve diğer sistemleri bir kuyruktan arayın.

!
Cevap yolunu kısa tut

Yavaş bir cevap, zaman kesimini ve ikili teslimat riskini arttırır.

En az alıcı örneği · JavaScript
app.post('/selsup/events/secret-path', async (request, response) => {
  const eventKey = createStableEventKey(request.body);
  const inserted = await inbox.insertOnce(eventKey, request.body);
  response.sendStatus(inserted ? 202 : 200);
});

03

Doppel, düzenleme ve deduple

Doppled delivery'i normal olarak kullanın. Var olduğunda sabit bir olay kimliği kullanın; aksi takdirde bir anahtarı bir varlık türünden, varlık kimliği, değiştirme süresi ve anlamlı verilerin bir haş'inden çıkarın.

Olaylar sıradan gelebilir. API üzerinden yazmadan önce değiştirilmiş Tarihi karşılaştırın veya mevcut varlığı yeniden yükleyin.

İşlem yapılmış bir olay için başarı durumunu geri gönderin. Aksi takdirde gönderen tamamlanmış çalışmayı yeniden deneyebilir.

i
Posta Kutusu Şekili

Eşsiz etkinlik anahtarı, durum ve deneme sayımı ile gelen olaylar tablosu, kopyalanmayı, tekrarlamayı ve denetlemeyi basitleştirir.

04

Kaybolan olayları kurtar

Webhooks sağlıklı olduğunda bile API uzantısını düzenli olarak çalıştırın.

Alıcı çalışmadıktan sonra, gelen kutuyu boşaltın ve tam kesinti penceresi için değişiklikleri isteyin. Aynı deduplasyon mantığı webhook ve API sonuçlarını birleştirmelidir.

05

Webhook yaşam döngüsünü yönet

Entegre etmenize aktif URL, etkinlik türü, son başarılı alınma ve en son error'i gösterin. Bu doğrudan sunucu günlük erişimsiz teşhis yapmayı sağlar.

Bir URL'yi değiştirmeden veya silmeden önce, yeni alıcının olayları kabul ettiğini kontrol edin.