Webhook Nedir ve Nasıl Test Edilir?

Webhook, bir olay gerçekleştiğinde karşı sistemin sizin adresinize HTTP isteği göndermesidir. Siz sormazsınız, haber gelir. Kendi ucunuzu doğru test etmenin yolu burada.

Webhook, bir olay gerçekleştiğinde karşı sistemin sizin belirlediğiniz adrese HTTP isteği göndermesidir. Siz sormazsınız, olay olduğunda haber gelir. Ödeme tamamlandığında, koda commit atıldığında veya form gönderildiğinde tetiklenen bildirimlerin çoğu böyle çalışır.

Webhook ile API çağrısı arasındaki fark ne

API çağrısında soru sizden çıkar. Her beş dakikada bir "yeni bir şey var mı" diye sorarsınız ve çoğu cevap boş döner. Webhook'ta yön terstir. Karşı sistem yalnızca olay olduğunda tek bir istek gönderir.

Bu tersine akış üç şeyi değiştirir:

  • Gecikme saniyelere iner, sorgu aralığı beklenmez
  • Boşa giden istek sayısı düşer
  • Sizin uçtaki adresin sürekli ayakta ve erişilebilir olması gerekir

Bir webhook nasıl test edilir

Test edilmesi gereken şey sizin uçtaki davranıştır. Karşı taraftan çıkan isteği zaten sağlayıcı üretir. Sıra şu şekilde işler:

1. Sağlayıcının belgesinden örnek gövdeyi alın ve kendi adresinize aynı gövdeyle POST isteği gönderin.

2. İmza doğrulamasını test edin. Gövde ile birlikte gelen imza başlığı bozulduğunda isteğin reddedildiğini görün.

3. Aynı isteği iki kez gönderin. Sistem aynı olayı iki kez işliyorsa mükerrer kayıt üretiyorsunuz demektir.

4. Uç noktayı kapatıp yeniden açın ve sağlayıcının tekrar deneme davranışını okuyun.

GitHub'ın webhook belgeleri olay tipleri, imza doğrulama ve tekrar gönderim davranışını örnek gövdelerle anlatıyor.

Yerel geliştirme ortamında test ederken ek bir adım gerekir. Sağlayıcının isteği bilgisayarınıza ulaşamayacağı için ya bir tünel aracı kullanılır ya da örnek gövde elle gönderilir. İkinci yöntem imza doğrulamasını da test etmenizi sağlar.

En sık yapılan üç hata

İmza doğrulamayı atlamak, adresi herkese açık bırakır. Yavaş cevap dönmek, sağlayıcının zaman aşımına düşüp isteği tekrar göndermesine yol açar. Mükerrer kontrolü koymamak ise tek ödemeyi iki kayda çevirir.

Bu akışı Lodos nerede kısaltıyor

Uç noktayı denemek, başlıkları değiştirmek ve cevabı incelemek için API Post/Get kullanılır; tekrarlayan tetiklemeler için Automation modülü devreye girer. Geliştirici tarafındaki diğer modüller Developers sayfasında duruyor.

Sınır şurada. Automation ücretsiz Standard planda tek kural ile sınırlı, Basic planda on kural veriyor. Karmaşık tekrar deneme kuyruğu isteyen üretim akışları için hâlâ kendi kodunuzu yazmanız gerekir.

SSS

Webhook güvenli mi? İmza doğrulaması yapıldığında güvenlidir. Doğrulama yoksa adresi bilen herkes sahte olay gönderebilir.

Webhook başarısız olursa ne olur? Çoğu sağlayıcı isteği belirli aralıklarla tekrar gönderir. Tekrar sayısı ve süresi sağlayıcının belgesinde yazar.

30+Modül
4,9K+Kullanıcı
ÜcretsizBaşlangıç

Hemen uygulamaya geçin.

Bu makalede anlatılan her şey Lodos’ta yerleşik olarak var - tek çalışma alanı, ek abonelik yok.

Başka bir araçtan mı geçiyorsunuz? Slack · Notion · Zoom · Jira · Postman · Toggl · Google Drive

Blogdan daha fazlası