Rest API, HTTP Nedir?

Fikriye
3 min readFeb 27, 2023

--

Rest Nedir?

Rest (Representational State Transfer), Server (Sunucu) ve Client (İstemci) arasında veri alışverişini sağlayan bir mimari modeldir. HTTP üzerinde çalışır ve diğer alternatiflere göre daha basittir, minimum içerikle veri alıp gönderdiği için de daha hızlıdır. İstemci ve sunucu arasında XML veya JSON verilerini taşıyarak uygulamaların haberleşmesini sağlar. Rest prensiplerini sağlayan sistemler, RESTful olarak sıfatlandırılır. Rest API de Rest mimarisinin kullanımıyla web hizmetleri arasında veri alışverişini sağlayan uygulama ara birimidir.

REST PRENSİPLERİ

API sayesinde programlar, kendilerinde olmayan ve farklı programlarda mevcut olan bazı işlev ve kabiliyetleri çekerek kendi bünyesinde çalıştırabiliyor.RESTful API,bir API’nin REST mimarisinin tüm sınırlamalarına sahip olması durumunda API’yi tasvir etmek için kullanılan sıfattır. Hemen aşağıda mini liste olarak yer verdiğimiz içeriklere sahip API’ler, RESTful API olarak adlandırırlar. Listedeki sınırlamalardan tek birinin sağlanmaması durumunda bile API, “RESTful” olma özelliğini kaybetmiş olur.

  • İstemci ve sunucu: İstemci front-end, sunucu ise back-end ile ilgilenir. Her ikisi birbirinden bağımsız olarak değiştirilebilir.
  • Durumsuzluk: İstemcinin sorgu ve oturum durumuna dair depolama verileri hiçbir sunucu üzerinde barındırılmaz.
  • Önbellekleme: İstemciler performansı arttırmak için yanıtı (tıpkı bir internet sayfasının statik elementi gibi) önbellekleyebilirler.
  • Tabaklı sistem: İstemci sondaki sunucu veya aradaki süreç boyunca bir aracıya bağlı olup olmadığını söyleyemez.
  • Talep üzerine kod: Sunucular, istemcinin fonksiyonelliğini geçici olarak icra ederek kod yollayabilir, genişletebilir ya da özelleştirebilir.

RESTful servisler veri iletiminde farklı HTTP metotlarını kullanmaktadır. Bunlar GET, POST, PUT, DELETE metotlarıdır. GET okuma, POST yeni kayıt ekleme(insert), PUT kayıt güncelleme(update), DELETE ise kayıt silme işlemi için kullanılır. Yapılan HTTP request’i için çağrılan URL ile beraber HTTP method bilgisi bahsi geçen 4 metottan biri olarak seçilir ve sunucu yapılan talebin kayıt üzerine nasıl etki edeceğini buna göre belirler.

HTTP Nedir?

Http, bilginin sunucudan kullanıcıya nasıl ve ne şekilde aktarılacağını gösteren protokoldür. Açılımı “Hyper Text Transfer Protocol” olan bu kavram dilimizde “Üstün Metin Transfer Protokolü” olarak biliniyor.

Aslında en basit haliyle söylersek web sayfalarının görüntülenmesini sağlayan protokoldür. HTTP, kullanıcının bilgisayarı ve sunucu(server) arasındaki veri alışverişinin kurallarını belirler. Bu protokolü kullanmak için tarayıcı kullanılır. Google Chrome, Mozilla Firefox, Internet Explorer bu web tarayıcılarından bazılarıdır. Bu tarayıcılar yardımı ile herhangi bir internet sitesine girmek için adres çubuğuna sitenin adresini yazdığınız vakit HTTP ile sunucuya bir istek gönderilir ve sunucu bu isteğe cevap verdiği vakit internet sitesinin verileri size gelir. Yani internet sitesine girmiş olursunuz.

HTTPS

Açılımı “ Secure Hyper Text Transfer Protocol ” olsa da dilimizde “Güvenli Metin Aktarma Protokolü” olarak biliniyor. Temelde iki protokol de aynı işi yapsa da HTTPS’ de güvenlik öne çıkar. HTTP protokolüne SSL sertifikası eklenerek oluşur. Kısacası internet sitelerinin metinlerle kurduğu bağlantının şifrelenmesidir.

HTTP, herhangi bir siteye bağlanmak istediğiniz zaman isteğinizi alıp, sunucuya iletir ve siteye girişinizi sağlar. HTTPS de aynı işlevi görür. Farkı ise HTTPS protokolü ile bir siteye bağlandığınız zaman güvenlik önlemleri daha ağırdır ve bilgileriniz asla başkaları tarafından okunamaz.

HTTP Durum Kodları

HTTP Status Code yani HTTP durum kodları, protokol kapsamında sunucu ile istemci arasında belirli kurallara dayalı alışveriş gerçekleşir. Durum kodları ise bu alışveriş sonucunda elde edilen cevabın olumlu veya olumsuz olduğunu anlamaya yardımcı olur. Kullanıcılar tarafından çoğunlukla bu kodlar görülmez. Sebebi ise tarayıcı tarafından dönüştürülmesidir.

5 ayrı grupta toplanan durum kodları şu şekildedir:

  • Bilgi — 1**
  • Başarı — 2**
  • Yönlendirme — 3**
  • Tarayıcı Hatası — 4**
  • Sunucu Hatası — 5**

Toplamına bakıldığında ise HTTP Durum Kodu sayısı 80’i bulmaktadır.

--

--