Ana içeriğe atla

Endpoint Konfigürasyonu

Bu sekmede, seçilen API Proxy için politikalar, protokol dönüşümü ayarları ve endpoint yönetimi işlemleri yapılabilir. Geliştirme Sekmesi

Endpoint İşlemleri

Her API Proxy, önüne koyulduğu Backend API’nin endpoint’leri için vekil olarak çalışan kendi endpoint’lerine sahiptir. Eğer API Proxy, API Tanım Belgesi Editörü ile oluşturulmuş olan bir API Tanım Dosyası kullanılarak, WSDL, Swagger ya da OpenAPI dosyasının adresi verilerek ya da böyle bir dosya yüklenerek oluşturulmuşsa, bu dosyada var olan endpoint’lerin her birisi için API Proxy’de aynı adlı bir endpoint otomatik olarak oluşturulur. Metot/Endpoint Listesi Kullanıcılar aşağıdaki muhtemel nedenlerden dolayı endpoint’lere yenilerini eklemek, var olanları güncellemek, silmek ya da belirli veya belirsiz bir süre için kullanıma kapatmak isteyebilirler:
  • Backend API’ye bir ya da daha fazla yeni endpoint eklenmesi
  • Backend API’den bir ya da daha fazla endpoint silinmesi
  • Backend API’deki bir ya da daha fazla endpoint’in adının ya da HTTP metodunun istemcilerden saklanmak istenmesi
  • Backend API’deki bir ya da daha fazla endpoint’in istemcilerin erişimine tamamen ya da geçici bir süreyle kapatılmak istenmesi

Endpoint Seçme

Endpoint listesinde, herhangi bir endpoint’in adına tıklandığında o endpoint seçilmiş olur ve arayüz buna göre güncellenir.
  1. Listede, seçilmiş olan endpoint’i belli edecek şekilde renk değişir.
  2. Üst orta bölümde seçilmiş olan endpoint’in hangisi olduğu gösterilir.
  3. Alt orta bölümde ise bu endpoint için yapılabilecek işlemlerin bağlantıları görüntülenir.
  4. Sağ tarafta ise seçilen endpoint’in Backend API’nin hangi endpoint ile ilişkili olduğu görünür.
Metot/Endpoint Seçme

REST Endpoint Ayarları Ekleme ve Güncelleme

REST tipindeki API Proxylerde endpoint ekleme ve güncelleme işlemi yapılabilir. SOAP, GRPC ve WEBSOCKET tipindeki API Proxylerde ve Connectorler ile oluşturulmuş veya Reverse Proxy tipindeki API Proxylerde endpoint eklenmesine izin verilmez. Uç Noktayı Düzenle (Edit Endpoint) bağlantısına tıklanınca açılan penceredeki bilgiler ile Ekle tuşuna basılınca açılan penceredeki bilgiler aynı olup, görseline aşağıda yer verilmiştir: REST Endpoint Ayarları

REST Endpoint Ayarları Alanları

AlanAçıklama
Tanım Dosyasında Gösterme (Hide in Spec File)Bu seçenek seçilirse bu metot Tanım Dosyasında gösterilmez.
İndirmeyi Etkinleştir (Enable Download)API Metodundan/Endpointinden dönen sonuç Byte Array tipinde ise sonucun dosya olarak ele alınması için bu seçenek işaretlenir. Aksi halde içerik encoded text olarak istemciye döner. Sonucun Byte Array olup olmadığına karar vermek için ise Content Type Header değerinin sistem ayarlarındaki “Byte Array Tipleri” listesinde yer alıp almadığına bakılır. Eğer bu listede yer alıyorsa sonucun Byte Array tipinde olduğuna karar verilir.
Re-Parse’da Yoksay (Skip for Re-Parse)Bu alan işaretlendiğinde, API Proxy “re-parse” işlemine tabi tutulduğunda bu uç noktanın güncellenmemesi gerektiğini belirtir. Örneğin tanım dosyasından bu uç nokta silinmiş ise dahi re-parse işlemi sonrası silinmeden kalır.
Aktifleştirildiğinde, compressed yanıt için (Accept-Encoding başlık değerine göre) Base64 Encoded Text kullanılır, varsayılan değeri Byte Array’dir. (If enabled, Base64 Encoded Text is used For Compressed Response(by Accept-Encoding header value), default value is Byte Array)Bu metoddan dönecek olan yanıt mesajının sıkıştırılmış olduğuna Accept-Encoding değeri içinde gzip, deflate veya br değerleri var mı diye bakılarak karar verilir. Eğer bu değerlerden birisi varsa yanıt mesajının durumu sıkıştırılmış (compressed)‘tır.

Dönen mesaj sıkıştırılmış durumda ise ve yanıt Byte Array tipinde ise ve:
• Metodun bu seçeneği aktif ise, dönen mesaj Byte Array olarak sıkıştırılarak istemciye döndürülür.
• Metodun bu seçeneği pasif ise, dönen mesaj Base64 ile encode edilip text’e çevrildikten sonra text hali sıkıştırılarak istemciye döner.
HTTP Metot (HTTP Method) (From Client to API Proxy bölümünde)Eklenecek olan metot/endpoint’e hangi HTTP metot ile istek gönderileceğidir. Girilmesi zorunludur.
Adres (Path) (From Client to API Proxy bölümünde)Eklenecek olan metot/endpoint’e hangi adresten erişileceğidir. Bu adres, API’nin kök adresine göreli olarak yazılır. Girilmesi zorunludur.
Açıklama (From Client to API Proxy bölümünde)Eklenecek olan metot/endpoint’e ilişkin açıklama bilgisidir. Girilmesi isteğe bağlıdır.
Backend HTTP Metot (Backend HTTP Method) (From API Proxy to Backend API bölümünde)Bu metoda gelen isteğin Backend API’ye hangi HTTP metot ile gönderileceğidir.
Önbellek Ayarları (Cache Settings)Bu ayar aktifleştirilirse metot/endpoint bazlı önbellek ayarları aktifleştirilmiş olur.
Önbellek Anahtar Tipi (Cache Key Type)Önbellek Anahtar Tipi için iki seçenek vardır:

Query Parametreleri Kullan (Use Query Params): Önbelleğe alma işlemi için oluşturulacak olan anahtarın istekteki HTTP Query parametrelerine göre belirlenmesi için kullanılır. Örneğin sorgu parametresi /metodAdı?param1=value1&param2=value2 şeklinde olduğunda önbellekte tutulacak anahtar param1=value1&param2=value2 değerinden oluşur, ve bir daha istek bu şekilde geldiğinde önbellekteki sonuç döner.

Özel Anahtar Oluştur (Create Custom Key): Önbelleğe alma işlemi için oluşturulacak olan anahtarın istekteki seçilecek alanlar ile oluşturulması için kullanılır. Bu değer seçildiğinde “Değişken Listesi” tablosunda belirtilecek alanlar ile anahtar oluşturulur.
Değişken Listesi (Variable List)Önbellek Key Tipi olarak “Özel Anahtar Oluştur (Create Custom Key)” seçilirse bu alan aktifleşir. Bu seçenek ile oluşturulacak olan önbellek anahtarının istek mesajının başlık, parametre veya gövde bölümlerinden belirtilecek alanların kombinasyonu ile yapılması sağlanır. Variable kullanarak özel anahtar oluşturulabilir.
Kapasite (Capacity)Önbellekte saklanabilecek maksimum yanıt sayısıdır.
Önbellek Geçersizleme İçin Yetki Gerekir (Invalidation Requires Authn)Önbelleği geçersiz kılmak için yetkilendirme gerekiyorsa seçilir.
Yetkisiz İsteklerin Ele Alınması (Handling Action)Önbelleği geçersiz kılmak için yetkilendirme gerekiyorsa yetkisiz istekler için yapılacak işlem seçilir:

DEVAM ET (Continue): Bu seçenek seçilirse, Cache-Control başlık bilgisinde no-cache, no-store veya max-age=0 değerlerinden biri gönderildiğinde eğer gönderen kişi yetkilendirilmemiş ise bu değer gönderilmemiş gibi çalışmasına devam eder.

DUR (Stop): Bu seçenek seçilirse, Cache-Control başlık bilgisinde no-cache, no-store veya max-age=0 değerlerinden biri gönderildiğinde eğer gönderen kişi yetkilendirilmemiş ise akışı durdurur ve hata mesajı döner.

Bu alan “Önbellek Geçersizleme İçin Yetki Gerekir” seçeneği işaretlendiğinde aktif hale gelir.
TTL (saniye) (TTL (seconds))Önbelleğe alınan yanıtın geçerli olacağı süre saniye olarak girilir.
Null/Boş Değerleri Önbelleğe Al (Cache Null Value)Boş değerlerin de önbelleğe alınması isteniyorsa işaretlenir.

Endpoint Silme

Uç Noktayı Sil (Delete Endpoint) bağlantısına tıklanır. Onay işleminden sonra endpoint silinir.

Endpoint Geçici Olarak Kullanımdan Kaldırma

Bir endpoint’in silinmeden erişime kapatılması mümkündür. Bunun için Uç Noktayı Devre Dışı Bırak (Disable Endpoint) bağlantısına tıklanır. Bağlantıya tıklandığında endpoint kullanımdan kaldırılmış olur ve bununla birlikte arayüzde aşağıdaki değişiklikler gerçekleşir.
  1. Endpoint’in yanındaki simge, endpoint’in kullanım dışı olduğunu gösterecek şekilde değişir.
  2. Uç Noktayı Devre Dışı Bırak (Disable Endpoint) bağlantısı kaybolur. Bunun yerine Uç Noktayı Etkinleştir (Enable Endpoint) bağlantısı gelir.
Metot/Endpoint Devre Dışı Bırakma

Endpoint Test Etme

Eğer bir API Proxy en az bir ortama yüklenmişse, endpoint’leri bu sekmeden kolayca test edilebilir. Bunun için seçilen endpoint için Uç Noktayı Test Et (Test Endpoint) bağlantısına tıklandığında bu endpoint için Test Konsolu açılır.

Sonraki Adımlar