Rest Api Nedir?

Rest Api Nedir?

REST API'lerini duymuş olabilirsiniz. Ama REST tam olarak nedir? Veya yeni başlayan biriyseniz, API nedir? Bugünkü gönderide, bir RESTful API'nin tanımlarını, nasıl çalıştığını ve bir geliştirici olarak REST API'lerini nasıl oluşturacağınızı neden bilmeniz gerektiğini açıklayacağım.

Api nedir?

API (Application Program Interface), farklı programların birbirleriyle iletişim kurmasını ve veri iletmesini sağlayan, uygulama entegrasyonuna ve oluşturulmasına izin veren bir dizi işlev ve prosedürdür.
API'ler, uygulama geliştirme sürecini ve tasarımını basitleştirir. Google, Apple, Amazon ve Facebook gibi tanınmış şirketlerin tümü, ölçeklenebilir uygulamaları verimli bir şekilde sunmak ve tasarlamak için API'leri kullanır. Çevrenizdeki uygulamalara entegre edilen bazı API'ler şunlardır:

  • Hava durumu uygulamaları
  • Kimlik Doğrulama/Oturum Açma ile Uygulamaları
  • Seyahat/Rezervasyon uygulamaları
  • Twitter

Geliştiriciler, bilgi göndermek veya almak için GET, POST, PUT, PATCH ve DELETE istekleri gibi HTTP istekleri yapmak için API'leri kullanabilir.

Peki ya REST API'ler?

REST API'leri, geliştiricilerin bu tür API'leri oluştururken izlediği tanımlanmış bir dizi kurala sahip API'lerdir. REST, Temsili Durum Aktarımı'nın kısaltmasıdır ve RESTful API'ler şu 6 yol gösterici ilkeyi takip eder:

1. Client-Server Architecture

Bir API tasarımının istemci ve sunucu bileşenlerini yalıtması gerektiğini belirten bir ilke. Herhangi bir iletişim veya istek, HTTP istekleri tarafından ele alınmalıdır.

2. Stateless

İstemciden gelen tüm istekler, sunucunun isteğini tamamlamak için ihtiyaç duyduğu tüm verileri içermelidir. Her istek bağımsız olarak çağrılır.

3. Cacheable

Bir yanıt verisi, benzer istekler için verilerin geri dönüştürülmesi için önbelleğe alınabilir olmalıdır. Bu, performansı artıran ve zamandan tasarruf sağlayan istemci-sunucu etkileşimlerini azaltır.

4. Uniform Interface

Bir REST API, sistem mimarisini basitleştirebilen ve her bir parçanın bağımsız olarak gelişmesine izin verebilen tek tip bir arayüze sahip olmalıdır. Arayüz 4 tasarım yönünü içermelidir:

Kaynakların belirlenmesi (ör. 12345 numaralı kullanıcıyı tanımlamak için user/12345/ gibi URI'ler) - Temsillerle kaynakların yönetimi (ör. XML veya JSON) - Kendi kendini tanımlayan iletişimler (ör. GET, POST, PUT, PATCH ve DELETE yöntemleri) - Hiper ortam uygulama durumunun motoru olarak (yani Köprüler, kullanıcının uygulamada ilerlemesine izin verir)

5. Layered System

İstemci-sunucu sisteminde, her katmanın sonraki katmanın dışında etkileşime giremeyen bir bileşen olduğu ek katmanlara sahip olmak. Bu katmanlar güvenlik, yük dengeleme ve ölçeklenebilirlik gibi ek özellikler sunabilir.

6. Code on Demand

Statik XML veya JSON verilerini döndürmenin yanı sıra istemcinin işlevselliğini genişletmek için sunucuların yürütülebilir kod teslim etmesine izin verin.

Neden REST API kullanmalı?

Bir REST API'nin yukarıdaki 6 yol gösterici ilkesini takip etmek zorunda olmak karmaşık görünse de, REST API'leri, aşağıdakiler nedeniyle daha yaygın hale geliyor:

Ölçeklenebilirlik (Scalability)

İstemci ve sunucular ayrı olduğu için, ön uç arabirimiyle ilgili olmaksızın birden çok platformda sunucuları ölçeklendirmek, düzenlemek ve yönetmek daha kolaydır.

Esneklik (Flexibility)

REST API'leri, kullanıcıların farklı sunucular arasında kolayca iletişim kurmasına izin verebilir ve farklı veri dönüş türlerine sahip birden çok arama türünü destekler.

Bağımsız (Independent)

Verilerin tek bir kaynağa veya yönteme bağlı olmaması nedeniyle, REST API'leri geliştirme sırasında birden çok ortamda farklı alanları otomatik olarak test edebilir.

Blog linki
Kapak Fotoğrafı

Yorumlar

Bu gönderi için yorum yapılmadı.