Ana içeriğe geç
Backend

REST API tasarımı: adresler, yanıtlar ve sayfalama

20 Aralık 2023Yaklaşık 2 dk okuma
İki sistem arasında istek ve yanıt akışını anlatan API bağlantısı illüstrasyonu
Konuyu anlatan editoryal illüstrasyon.

Bir API'yi kullanmak, adresler ve yanıtlar tutarlı olduğunda kolaylaşır. Kaynak adları, HTTP metotları, hata biçimi ve sayfalama kararlarını aynı sözleşmenin parçaları olarak ele alın.

URL Yapısı

Kaynak odaklı URL'ler kullanın:

  • Çoğul isimler tercih edin (/users, /products)
  • Fiillerden kaçının (/getUser yerine GET /users/:id)
  • İç içe kaynakları mantıklı kullanın (/users/:id/orders)

HTTP Metodları

Her metodu amacına uygun kullanın:

  1. GET: Veri okuma (idempotent)
  2. POST: Yeni kaynak oluşturma
  3. PUT: Kaynağı tamamen güncelleme
  4. PATCH: Kaynağı kısmen güncelleme
  5. DELETE: Kaynak silme

Hata Yönetimi

HTTP durum kodunu yanıtın durumuyla tutarlı seçin. Yanıt gövdesinde uygulama hata kodu ve anlaşılır bir mesaj sunabilirsiniz. Ayrıntılara günlük kayıtlarını, gizli bilgileri veya sunucu iç yapısını eklemeyin.

Sayfalama ve Filtreleme

Sık değişen veya büyük listelerde imleç tabanlı sayfalama uygun olabilir. Sıralamanın kararlı olmasını ve aynı kaydın iki sayfada tekrarlanmamasını sağlayın. Sayfa numarasına doğrudan geçiş gerekiyorsa offset tabanlı yaklaşımın maliyetini ölçün.

Versiyon Yönetimi

Uyumsuz değişikliklerin nasıl yayınlanacağını baştan belirleyin. URL içinde v1 veya v2 gibi bir sürüm belirtmek seçeneklerden biridir; eski istemciler için geçiş ve kaldırma tarihlerini açıklayın.

Rate Limiting

Kullanım sınırlarını ve sınır aşıldığında beklenen yanıtı açıklayın. İstemcinin ne zaman yeniden deneyebileceğini yanıt başlıklarında belirtin.

Sonuç

Sözleşmeyi örnek istekler, hata yanıtları ve sayfalama senaryolarıyla belgeleyin. Örneklerin uygulamanın gerçek davranışıyla eşleştiğini test edin.

← blue'og'a dön

bluedev Asistanı

Ürünleri ve çalışmalarımızı keşfedin.

Neyi çözmek istersiniz?

İhtiyacınızı yazın; ilgili ürünleri ve çalışmalarımızı kaynaklarıyla birlikte inceleyelim.

Yanıtlar kaynak kataloğundan hazırlanır. Yapay zekâ desteği yalnız izninizle kullanılır.

Diğer görevler ve ayarlar

İki ürünü karşılaştırabilir veya fikrinizi iletişim formuna aktarabileceğiniz bir ihtiyaç özetine dönüştürebilirsiniz.

Kaynak kataloğu

AI desteği şu anda kullanılamıyor. Doğrulanmış projeleri keşfedebilir ve proje özeti hazırlayabilirsiniz.

Bu site görüşmenizi kalıcı olarak saklamaz.Gizlilik