Sözlük
Webhook nedir?
Webhook, bir sistemde olay olduğunda başka bir sisteme kendiliğinden bildirim gönderen yöntemdir.
Webhook nasıl çalışır
Bildirim almak isteyen taraf bir adres verir. Olay gerçekleştiğinde kaynak sistem o adrese, olayın içeriğiyle birlikte bir istek gönderir. Alan taraf isteği işler ve aldığını bildirir.
Devamını oku
Mesaj geldiğinde tetiklenen bir yanıt sistemi, mesajın geldiğini işte bu yolla öğrenir.
Alıcı tarafın verdiği yanıt da anlamlıdır. Başarılı bir yanıt olayın işlendiğini bildirir; hata dönerse kaynak sistem yeniden dener.
Webhook ile sorgulama farkı
Sorgulamada siz belirli aralıklarla “yeni bir şey var mı” diye sorarsınız; çoğu soru boşa gider ve yeni olayı ancak bir sonraki soruda öğrenirsiniz. Webhook’ta soru sormazsınız, olay size gelir.
Devamını oku
Fark hem yükte hem gecikmede görülür: sorgulamada yanıt aralık kadar gecikir, webhook’ta anında ulaşır.
Bu yüzden anlık iş gerektiren her yerde webhook tercih edilir: gelen mesaja yanıt, ödeme bildirimi, kargo durumu değişikliği.
Sorgulamanın tek üstünlüğü basitliğidir: dışarıya açık bir adres gerektirmez. Güvenlik nedeniyle dışarıya adres açamayan sistemlerde hâlâ tercih edilir.
Webhook güvenliği
Adres herkese açıktır; bu yüzden gelen isteğin gerçekten kaynaktan geldiği doğrulanmalıdır. Yaygın yöntem, kaynağın isteği paylaşılan bir sırla imzalaması ve alıcının imzayı yeniden hesaplayarak karşılaştırmasıdır.
Devamını oku
Doğrulanmayan bir webhook ucu, sahte olay üretilmesine açıktır.
İkinci koruma zaman damgasıdır. İmza doğru olsa bile eski bir isteğin yeniden gönderilmesini engellemek için isteğin ne zaman üretildiğine bakılır.
İmzanın hesaplandığı gövde, alınan ham gövdenin aynısı olmalıdır. Gövdeyi çözümleyip yeniden birleştirmek imzayı bozar; bu, en sık yapılan doğrulama hatasıdır.
Tekrar gönderim ve çift işleme
Kaynak sistem zamanında yanıt alamazsa aynı olayı tekrar gönderir. Alıcı bunu hesaba katmazsa aynı mesaja iki kez cevap yazılır.
Devamını oku
Çözüm, her olayın kendi kimliğini saklamak ve daha önce işlenmişse atlamaktır. Ayrıca ağır iş webhook içinde değil, kuyrukta yapılır.
Kuyruk ayrıca yükü de dengeler. Aynı anda yüzlerce olay gelse bile alıcı hepsini sırayla işler, hiçbiri düşmez.
Kaynak: W3C — WebSub önerisi
Sık sorulan sorular
Webhook ile API farkı nedir
API’de siz istek atarsınız, webhook’ta karşı taraf size istek atar. Yön terstir. İkisi çoğu sistemde birlikte bulunur: veriyi siz istersiniz, değişikliği sistem bildirir.
Webhook adresi neye benzer
Sunucunuzda çalışan, dışarıdan erişilebilen bir HTTPS adresidir. Adres tahmin edilemez olmalıdır; kısa ve kolay tahmin edilen bir yol, sahte istek denemelerini davet eder.
Webhook yanıtı ne kadar sürmeli
Mümkün olduğunca kısa. Çoğu sağlayıcı saniyeler içinde yanıt bekler; gecikirse olayı başarısız sayıp yeniden gönderir. Uzun süren iş varsa istek hemen yanıtlanır ve iş arka planda yürütülür; bu, tekrar gönderimi de önler.
Webhook işinizde nasıl çalışır, dinleyin
30 gün ücretsiz deneyin. Kart istenmez, numaranız değişmez.
Size dönelim
Telefonunuzu ya da e-postanızı bırakın, aynı iş günü içinde dönüş yapalım.
- WhatsApp: 0850 840 52 14
- E-posta: iletisim@cevaplama.com