Email API'den Malformed JSON Gelirse Nasıl Debug Edilir
Email API'den malformed JSON aldığında ilk tepkin parse hatası yakalamak olabilir ama bu yanılgı. Sorun çoğu zaman API'nin kendisinde değil, sınır koşullarında (boundary problem) yatıyor.
Evan Shepherd'ın yazısında anlatılan yaklaşım basit: ham HTTP yanıtını hemen kaydet, sonra sırayla kontrol et.
İlk adım, yanıtı parse etmeden önce tam olarak ne aldığını görmek. Status kodu, content type header'ı ve body'nin ilk ve son baytlarını logla. Truncated JSON mi, HTML error page mi, yoksa valid ama beklenmedik schema mı, her biri farklı çözüm gerektirir. Proxy, gateway ya da error handler arada bozuyorsa, raw bytes'ı server loglarıyla karşılaştırarak bulursun.
Düşün ki signup flow'unda bir kullanıcı doğrulama linki bekliyor. Parser magic ile hemen yeniden deneme yaparsan, aynı e-postu iki kez gönderebilirsin ya da hesabı bloke edebilirsin. Bunun yerine yanıtı "uncertain" durumuna koy. HTTP 200 ama JSON bozuk? Beklet. 500 error ama JSON valid? Bu API-level başarısızlık, retry logic'e ver.
B2B SaaS'ta bu fark kritik. Parser'ın yanlış varsayımı, duplicate send'lerden veya müşteri kaybından daha pahalıya patlar. Boring tutmak, status ve schema'yı ayrı validate etmek, raw response'u saklamak, uzun vadede debug sürelerini ve production sorunlarını kısaltır.
0 yorum