Bir iş süreci için bir uç nokta oluştururken, bu istekte gönderilecek veri türünü belirtmelisiniz ( Request payload type ). En yaygın seçenek JSON ; gerekli tüm parametreleri kolayca belirlemenize ve bir veri modeli veya bir dizi nesne iletmenize olanak tanır. Ek olarak, örneğin XML veya Multipart Form (dosya göndermeniz gerekiyorsa) gibi başka seçenekler de mümkündür.

Aynı zamanda, kesin yapı önceden bilinmediğinde (veya sadece önemli olmadığında) bir durum kabul edilebilir. Bu durumda, makul bir seçenek " raw " sorguları kullanmaktır.

request payload type

raw istekler için İş Süreci

Bunun gerekli olabileceği bir durum düşünün. Geliştirdiğimiz hizmetin sadece bir bağlantı bağlantısı olduğunu varsayalım. Görevi, kullanıcıdan bir istek almak, yetkilendirmeyi kontrol etmek, günlükleri kaydetmek, spam koruması gerçekleştirmek ve her şey yolundaysa isteği yeniden yönlendirmektir.

Raw sorgularının önemli bir özelliği, iş süreçleri tasarlanırken hiçbir girdi parametresinin kullanılmamasıdır. Bunun yerine, istek gövdesini almak için özel bir blok kullanılır - Get Request Body . Diyelim ki istek hakkında genişletilmiş bilgiyle ilgileniyorsunuz. Bu durumda, Current Request Info bloğu uygun bir seçenektir - yalnızca istek gövdesini değil, aynı zamanda ek parametreleri ve istek başlıklarını da döndürür.

Current Request Info

İstekten belirli bir başlıkla ilgilendiğimiz durumda, Get Request Header bloğu kullanılarak elde edilebilir. Yukarıdaki örnek, isteğin IP adresini içeren X-Real-IP başlığını okur. Ortaya çıkan IP, verilen IP'nin geçerli olduğunu ve yasaklı adreslerin kara listesinde olmadığını kontrol etmesi gereken bir işleve iletilir. Sonuç olarak, süreç ya uygun bir hata mesajı ile durdurulacak ya da her şey yolundaysa, daha fazla yürütmeye izin verilecektir.

IP Check

Raw olarak alınan istek, bir bayt dizisi olarak temsil edilir. Algılama kolaylığı için bir dizgeye dönüştürülebilir ( To String bloğu); bu formda bilgiler günlüklerde saklanır.

Bu durumda, isteğin kendisi, herhangi bir dönüşüm olmaksızın, HTTP Request bloğu kullanılarak yeniden yönlendirilebilir. Bu örnekte, istek yöntemi, URL'si ve istek gövdesi ( Current Request Info bloğundan alınan) belirtilmiştir. HTTP Request bloğunun sonucu, tüm iş sürecinin sonucu olarak kullanılır.

HTTP Request

Ekran görüntüsü, son iş sürecini gösterir. Lütfen fonksiyon bloklarının ( FUNC Save request Log ve FUNC IP Blacklist Check ) örnek olduğunu ve yalnızca bu projenin kapsamında bulunduğunu unutmayın.

BP Complete

Böylece uç nokta, gerçek içeriğinden bağımsız olarak herhangi bir istekle çalışmak için kullanılabilir. Üçüncü taraf bir hizmete gönderilmesi gereken isteğin tam olarak ne olduğunu bilmenize gerek yoktur ve içinde bazı değişiklikler olsa bile (model ekleme, parametreleri yeniden adlandırma), uç noktayı herhangi bir değişiklik yapmadan kullanmaya devam edebilirsiniz. proje.

Was this article helpful?

AppMaster.io 101 Çarpışma Kursu

10 Modüller
2 haftalar

Nereden başlayacağınızdan emin değil misiniz? Yeni başlayanlar için hızlandırılmış kursumuzla başlayın ve AppMaster'ı A'dan Z'ye keşfedin.

Kursa Başlayın
Development it’s so easy with AppMaster!

Daha Fazla Yardıma mı ihtiyacınız var?

Herhangi bir sorunu uzmanlarımızın yardımıyla çözün. Zamandan tasarruf edin ve uygulamalarınızı oluşturmaya odaklanın.

headphones

İletişim desteği

Bize sorununuzu anlatın, size bir çözüm bulalım.

message

Topluluk Sohbeti

Soruları sohbetimizde diğer kullanıcılarla tartışın.

Topluluğa Katılın