REST
REST, dağıtık arayüzler için mimari kuralları açıklar. Kaynaklar, durumsuz istekler ve bağlantılar bu yaklaşımın parçalarıdır.
Kaynaklara ortak arayüz kurallarıyla erişmek
REST, Representational State Transfer ifadesinin kısaltması ve bir mimari tarzdır. Uygulamalar, örneğin bir projenin güncel durumunu gösteren kaynak temsillerini paylaşır. Kuralları arasında istemci ve sunucunun ayrılması, durumsuz istekler, yanıtın önbelleğe uygunluğunun belirtilmesi ve ortak bir arayüz bulunur. Temsillerdeki bağlantılar yapılabilecek sonraki adımlara yönlendirir; yalnızca JSON döndüren bir HTTP adresi bu kuralları karşılamaya yetmez.
Kurgusal bir proje portalında uygulama, GET /projects/P-42 ile projenin temsilini ister. Bu temsilde, ilgili görevlere erişilmesi planlanan /projects/P-42/tasks bağlantısı da vardır. İki yol da bize ait tasarım örnekleridir. İstek, sunucunun onu anlamak için ihtiyaç duyduğu bilgiyi taşımalıdır; sunucunun bu istemciyle önceki konuşmayı yeniden kurması gerekmemelidir. Proje verileri yine kalıcı saklanabilir. Burada durumsuzluk, veritabanının yokluğunu değil iletişimi açıklar.
Bu yüzden entegrasyon ekibi kaynakların, bağlantıların, yetkilerin ve yanıtların yeniden kullanımının gerçekte nasıl düzenlendiğini incelemelidir. REST etiketi tek başına bu soruları yanıtlamaz.
Kaynaklar
İlgili terimler
- APIAPI, bir yazılımın başka yazılımlardaki işlevleri veya verileri hangi kurallarla kullanabileceğini tanımlar.
- GraphQLGraphQL, uygulamaların tür tanımlı API şemasından alan seçmesini sağlar. Veri erişimi ve yetki denetimi sunucunun sorumluluğunda kalır.
- OpenAPIOpenAPI, HTTP arayüzlerini yollar, parametreler ve yanıtlarla makinenin okuyabileceği biçimde tanımlar. Tanım ile çalışan uygulama örtüşmelidir.
- Server-Sent EventsServer-Sent Events, arka plan işinin ilerlemesi gibi metin bildirimlerini HTTP bağlantısıyla sunucudan istemciye taşır.
- ETagETag, HTTP kaynağının belirli bir gösterim sürümünü tanımlar; koşullu okuma veya değişiklik isteklerinde kullanılır.
- Cross-Origin Resource SharingCORS, tarayıcıda farklı origin’den gelen yanıtların okunmasını düzenler. API’de oturum açmanın veya yetki kontrolünün yerini tutmaz.
Projeniz ASES ile
Projenizi bize anlatın. İlk değerlendirmemizle size dönelim.