REST API - Request

Birleştirilmiş REST istek bloğu, web API'lerini çağırmak için kullanılır. Method, header'lar, query parametreleri ve payload'u yapılandırın. Çalışma zamanı için async (bloklamayan) veya sync (yanıtı bekleyen) seçin. İsteğe bağlı olarak, JSON yanıttan nokta/array yolu kullanarak bir değer çıkarabilirsiniz.

📥 Girdiler

Enable Opsiyonel boolean; isteği çalıştırma tetikleyicisi. False ise blok isteği atlayabilir (varsayılan True).

Server Address Çağrılacak URL veya endpoint (zorunlu).

Headers Opsiyonel header'lar; dictionary veya JSON string olarak verilebilir.

Query Params Opsiyonel sorgu parametreleri; dictionary veya JSON string olarak verilebilir.

Payload Opsiyonel istek gövdesi (seçilen body mode'a göre gönderilir).

Response Path JSON yanıtından bir değer çıkarmak için kullanılan opsiyonel metin yolu (örnekler: data.items[0].id veya items[2]).

(burada soketler girdilerdir)

📤 Çıktılar

OK HTTP yanıtı başarılı olduğunda True olan boolean.

Status Code Sunucunun döndürdüğü HTTP durum kodu.

Error Ağ/HTTP problemleri veya ayrıştırma hataları için hata mesajı.

Response Text Ham yanıt gövdesi (metin olarak).

Response JSON Mevcutsa ayrıştırılmış JSON nesnesi (aksi halde None).

Response Headers Yanıt header'larının haritası.

Elapsed (ms) İsteğin milisaniye cinsinden süresi.

Extracted Data Response Path kullanılarak Response JSON'dan çözülen değer (bulunamazsa None).

(burada soketler çıktı olarak verilir)

🕹️ Kontroller

Method HTTP methodunu seçin: GET / POST / PUT / PATCH / DELETE.

Body Mode Payload'u nasıl göndereceğinizi seçin: json / form / raw.

Runtime Mode Çalışma modunu seçin: Async (bloklamayan, son sonucu saklar) veya Sync (yanıtı bekler).

Timeout (s) İstekler için zaman aşımı (saniye). Geçersiz değerler güvenli bir varsayına geri döner.

Verify SSL TLS sertifika doğrulamasını etkinleştir veya devre dışı bırak (sadece güvenilir test ortamlarında devre dışı bırakın).

⚙️ Nasıl çalışır

  • Enable True olduğunda blok, seçilen Method ve Body Mode ile birlikte Server Address, Headers, Query Params ve Payload kullanarak isteği oluşturur.

  • Sync modunda blok, HTTP isteği tamamlanana kadar bekler ve aynı değerlendirme döngüsünde güncel sonucu döndürür.

  • Async modunda blok, isteği bloklamadan gönderir; blok son tamamlanan sonucu saklar ve arka plandaki istek tamamlandığında çıktılarını günceller.

  • Response Path için verilen JSON çıkarım yolu mevcutsa Extracted Data olarak çözülür; boş yol çıkarım yapmaz.

  • HTTP veya ağ hatalarında blok bir Error mesajı sağlar ve hataları tespit etmeyi kolaylaştırmak için bloğun sonucu geçersiz olarak işaretlenir.

📝 Kullanım

  1. Server Address'i API endpoint'inize ayarlayın.

  2. Opsiyonel olarak Headers ve Query Params'i dictionary veya JSON string olarak sağlayın.

  3. İstek gövdesini Payload'a koyun ve uygun Body Mode'u seçin (yapılandırılmış veriler için json kullanın).

  4. Runtime Mode'u seçin:

    • Senaryonuzun bloklanmasını önlemek için Async'i kullanın (UI/sürekli boru hattı için uygundur).

    • Aynı çalıştırma içinde yanıtın hemen gerekli olduğu durumlarda Sync kullanın.

  5. (Opsiyonel) Aşağı akış mantığı için JSON yanıtından iç içe bir değer çıkarmak üzere Response Path ekleyin.

  6. Çağrıyı tetiklemek için Enable'ı True yapın veya diğer bloklardan boolean tetik beslemesi verin.

💡 İpuçları ve Püf Noktaları

  • Daha temiz yapı ve formatlama hatalarını azaltmak için Payload'a beslemeden önce Data to JSON bloğu ile JSON payload hazırlayın.

  • Görsel sözlük ayrıştırması tercih ediyorsanız Response JSON'dan sonra Parse Data Dictionary kullanarak alanlara güvenli erişim sağlayın.

  • API yanıtlarını zaman damgalı kaydetmek için periyodik sonuçları CSV Export ile kaydedin.

  • Hata ayıklama için Error veya Response Text'i Debug Input'a bağlayarak beklenmeyen çıktıları yazdırın veya inceleyin.

  • İsteklerin tam olarak ne zaman gönderileceğini kontrol etmek için Logic Input veya Rising Edge ile birleştirin (ör. yalnızca her olay için bir kez gönder).

(burada önerilen bloklar sağlanan listeden alınmıştır)

🛠️ Sorun Giderme

  • Server Address boş veya geçersiz: Server Address'in tam bir URL olduğundan emin olun (gerekliyse protokol dahil).

  • İstek zaman aşımı: Timeout (s) değerini artırın veya sunucuya ağ bağlantısını kontrol edin.

  • Test ortamlarında SSL doğrulama hataları: Hedefe güveniyorsanız geçici olarak Verify SSL'i devre dışı bırakın.

  • Beklenmeyen JSON ayrıştırma hataları: Önce Response Text'i kontrol edin; yapılandırılmış veri gönderiyorsanız geçerli JSON kullanın ve Body Mode'u json olarak ayarlayın.

  • Çıkarılan veri yok: Yapıyı Response JSON'ı inceleyerek doğrulayın ve Response Path'i nokta/index gösterimi kullanarak (örn. items[0].id) ayarlayın.

🔒 Gizlilik ve Güvenlik

Headers veya Payload içindeki hassas verilerle (API anahtarları, parolalar) dikkatli olun. Yanıtları kaydederken veya dışa aktarırken hassas alanların gizlendiğinden emin olun.

🧭 Örnek iş akışları

  • Sensör verilerini periyodik olarak bir web servisine gönderin ve başarı/başarısızlık sayılarını CSV Export ile kaydedin.

  • Data to JSON ile oluşturulan yapılandırılmış bir JSON nesnesini POST edin ve sonra Extracted Data'yı karar akışına (Logic Input / eşikler) besleyin.

  • Geliştirme sırasında sunucu hatalarını incelemek için önce Debug Input kullanın, ardından üretime geçmeden önce günlüklemeyi etkinleştirin.

Last updated