Bu sayfa, Apinizer’daki hata mesajı yapılandırma sisteminin tüm katmanlarını, çalışma mantığını ve öncelik sırasını merkezi olarak açıklar. Politika, yönlendirme ve platform genelindeki tüm hata mesajı özelleştirme yöntemleri burada bir arada anlatılmaktadır.
Çok Katmanlı Yapılandırma Sistemi
Apinizer, hata mesajlarını dört farklı seviyede yapılandırmanıza olanak tanır. Her seviye, bir üst seviyeyi geçersiz kılabilir (override). Bu sayede hem platform genelinde tutarlı bir hata davranışı tanımlayabilir hem de belirli bir politika veya hata tipi için tamamen farklı bir yanıt döndürebilirsiniz.Yapılandırma Seviyeleri
Hata Mesajı Öncelik Sırası
Bir hata oluştuğunda Gateway aşağıdaki öncelik sırasına göre hangi hata yanıtının döneceğini belirler. İlk eşleşen seviyenin yanıtı kullanılır; alt seviyeler değerlendirilmez.İş Akışı: Bir Hata Nasıl Yanıta Dönüşür?
Aşağıda bir hatanın oluştuğu andan son kullanıcıya döndüğü ana kadarki adımlar özetlenmiştir:Adım 1: Hata Oluşması
Politika, yönlendirme veya API Proxy işleme sırasında bir hata oluşur (örneğin kimlik doğrulama başarısız, kota aşıldı, şema doğrulama hatalı vb.).Adım 2: Varsayılan Değerlerin Belirlenmesi
Sistem, hata tipine karşılık gelen varsayılan HTTP durum kodu, hata kodu ve hata mesajını belirler.Adım 3: Platform Geneli Özelleştirmelerin Kontrolü
Sistem Ayarları > Hata Mesajları sayfasında bu hata tipi için özelleştirilmiş değerler tanımlıysa, varsayılan değerlerin üzerine yazılır.Adım 4: Politika/Yönlendirme Seviyesi Özelleştirme
Hatayı fırlatan politika veya yönlendirme yapılandırmasında bu hata tipi için özelleştirme tanımlıysa uygulanır. Sırasıyla:- Hata satırı bazlı özel mesaj şablonu kontrol edilir (en yüksek öncelik)
- Politika/yönlendirme geneli özel mesaj şablonu kontrol edilir
- Hata yanıt kuralları sırasıyla değerlendirilir
- Satır bazlı alan özelleştirmesi uygulanır
Adım 5: Hata Yanıt Şablonunun Uygulanması
API Proxy veya Proxy Grubu seviyesinde tanımlı JSON veya XML hata yanıt şablonu varsa, yer tutucular çözümlenerek yanıt gövdesi oluşturulur. Şablon yoksa varsayılan format kullanılır.Adım 6: Yanıtın İstemciye Gönderilmesi
Oluşturulan hata yanıtı, belirtilen HTTP durum kodu ve içerik tipi ile istemciye gönderilir.Yapılandırma Yöntemleri
1. Alan Bazlı Özelleştirme (Basit)
Her hata satırı için HTTP durum kodu, hata kodu ve hata mesajı alanlarını özelleştirebilirsiniz. Bu yöntem, belirli bir hatanın sabit bir mesajla döndürülmesini sağlar. Yapılandırma yerleri:- Sistem Ayarları > Hata Mesajları (platform geneli)
- Politika güncelleme ekranı > Hata Mesajı Özelleştirme sekmesi (politika bazlı)
- Yönlendirme güncelleme ekranı > Hata Mesajları bölümü (yönlendirme bazlı)
2. Şablon Tabanlı Özel Mesaj Oluşturucu (Dinamik)
Serbest metin şablonu yazarak, yer tutucularla istek ve hata bilgilerini otomatik olarak yanıta dahil edebilirsiniz. Bu yöntem, her istek için farklı bilgiler içeren dinamik hata yanıtları oluşturmanızı sağlar. İki kullanım şekli:- Hata satırı bazlı: Belirli bir hata tipi için özel şablon (en yüksek öncelik)
- Politika/yönlendirme geneli: Tüm hata tipleri için tek şablon
3. Hata Yanıt Kuralları (Koşullu)
Koşul bazlı yanıt kuralları tanımlayarak, istek bilgilerine göre (yol, başlık, HTTP metodu vb.) farklı hata yanıtları döndürebilirsiniz. Kuralların çalışma mantığı:- Hata oluştuğunda tanımlanan kurallar sıra numarasına göre değerlendirilir
- İlk eşleşen kuralın şablonu uygulanır
- Hiçbir kural eşleşmezse sonraki öncelik seviyesine geçilir
- Koşulsuz bir kural varsayılan kural (catch-all) olarak çalışır ve her zaman eşleşir
4. API Proxy Hata Yanıt Şablonu
API Proxy veya Proxy Grubu seviyesinde JSON ve XML formatında hata yanıt şablonları tanımlanabilir. Bu şablonlar, yukarıdaki yöntemlerle özelleştirme yapılmadığında varsayılan hata yanıt formatı olarak kullanılır. Yapılandırma yeri: API Proxy Ayarları veya API Proxy Grubu ayarları İstek içerik tipine göre uygun şablon (JSON veya XML) otomatik olarak seçilir.Yer Tutucular ve Değişkenler
Şablon tabanlı mesajlarda ve hata yanıt kurallarında kullanılabilecek yer tutucular:Standart Yer Tutucular
Standart Yer Tutucular
API Proxy hata yanıt şablonlarında ve hata yanıt kurallarında kullanılır:
Hata Değişkenleri
Hata Değişkenleri
Şablon tabanlı mesajlarda ve hata yanıt kurallarında kullanılır:
İstek Değişkenleri
İstek Değişkenleri
Mesaj ve API Değişkenleri
Mesaj ve API Değişkenleri
Tarih/Saat Değişkenleri
Tarih/Saat Değişkenleri
Ortam Değişkenleri
Ortam Değişkenleri
${DEGISKEN_ADI} formatında ortam değişkenleri kullanılabilir. Ortam değişkenleri hakkında detaylı bilgi için Ortam Değişkenleri sayfasına bakın.Senaryo Örnekleri
Senaryo 1: Tüm Hatalarda Standart JSON Formatı
Kuruluş genelinde tüm API hatalarının aynı JSON formatında dönmesini istiyorsanız, platform genelinden alan bazlı özelleştirme yapmanız yeterlidir. Yapılandırma yeri: Sistem Ayarları > Hata Mesajları Her hata satırında özelleştirilmiş mesaj, hata kodu ve HTTP durum kodu alanlarını düzenleyin. Tüm API Proxy’ler bu değerleri otomatik olarak kullanacaktır.Senaryo 2: Belirli Bir Politika İçin Farklı Hata Mesajı
Kimlik doğrulama politikasında “Kullanıcı bulunamadı” hatası için özel bir mesaj döndürmek istiyorsanız: Yapılandırma yeri: Politika güncelleme ekranı > Hata Mesajı Özelleştirme sekmesi İlgili hata satırında özelleştirilmiş mesaj alanını düzenleyin. Bu, yalnızca bu politikadan fırlatılan hata için geçerli olacaktır.Senaryo 3: Dinamik Hata Yanıtı (Şablon Tabanlı)
Her hatada istek bilgilerini ve takip numarasını içeren detaylı bir yanıt döndürmek istiyorsanız, şablon tabanlı özel mesaj oluşturucuyu kullanın. Yapılandırma yeri: Politika güncelleme ekranı > Hata Mesajı Özelleştirme sekmesi > ilgili hata satırı > Özelleştir butonu Örnek şablon:Senaryo 4: İstemci Tipine Göre Farklı Hata Formatı (Koşullu Yanıt Kuralları)
Aynı hata tipi için mobil istemcilere kısa mesaj, web istemcilere detaylı mesaj döndürmek istiyorsanız, hata yanıt kurallarını kullanın. Yapılandırma yeri: Politika güncelleme ekranı veya Sistem Ayarları > Hata Mesajları > ilgili hata satırı > Özelleştir butonu Kural 1 (Sıra: 1, Koşul:Header X-Client-Type = mobile):
Senaryo 5: İş Kuralı STOP Aksiyonunda Özel Mesaj
İş Kuralı politikasında STOP aksiyonu ile akışı durdururken özel bir hata mesajı döndürmek istiyorsanız: Yapılandırma yeri: İş Kuralı politikası güncelleme ekranı > Hata Mesajı Özelleştirme sekmesi Politika genelinde özel mesaj şablonunu etkinleştirin ve şablonu yazın:Bu Yapıyı Ne Kadar Dinamik Kılar?
Apinizer’ın hata mesajı yapılandırma sistemi aşağıdaki nedenlerle son derece esnek ve dinamik bir çözüm sunar:- Katmanlı geçersiz kılma (override): Her seviye bir üst seviyeyi geçersiz kılabilir. Platform genelinde standart bir davranış tanımlayıp, belirli API’ler veya politikalar için istisna tanımlayabilirsiniz.
- Koşul bazlı yanıt kuralları: Aynı hata tipi için istek bilgilerine göre (başlık, yol, metod, IP vb.) tamamen farklı yanıtlar döndürebilirsiniz.
- Dinamik yer tutucular: Şablonlarda istek bilgileri, hata bilgileri, zaman bilgileri ve ortam değişkenleri kullanarak her istek için farklı içerik oluşturabilirsiniz.
- Üç farklı format desteği: JSON, XML ve düz metin formatlarında hata yanıtları tanımlayabilir; istek içerik tipine göre otomatik format seçimi yapabilirsiniz.
- Merkezi ve dağıtık yönetim: Platform genelinden tek seferde tüm hataları yönetebilir veya politika/yönlendirme bazında bağımsız yapılandırma yapabilirsiniz.
İlgili Sayfalar
Hata Mesajları (Sistem Ayarları)
Platform genelinde hata mesajı yönetimi, tüm hata tipleri tablosu
Politika Nedir?
Politika bazlı hata mesajı özelleştirme
API Proxy Ayarları
JSON/XML hata yanıt şablonu yapılandırması
HTTP Yönlendirme
Yönlendirme bazlı hata mesajı özelleştirme
Dinamik Değişkenler
Şablonlarda kullanılabilen tüm değişkenler
İş Kuralı
STOP aksiyonunda özel hata mesajı kullanımı

