Sobes.tech
Junior

CRUD nasıl uygulanır?

sobes.tech yapay zeka

AI'dan gelen yanıt

CRUD, Create, Read, Update, Delete anlamına gelir. Bunlar, veriler üzerinde gerçekleştirilen temel işlemlerdir.

Create (Oluşturma): Yeni bir kaynak oluşturmak için POST yöntemiyle endpoint'e istek gönderilir. İstek gövdesi genellikle yeni nesnenin verilerini içerir.

// Fetch API kullanımıyla örnekler
fetch('/api/items', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ name: 'Yeni Öğe' }),
})
  .then(response => response.json())
  .then(data => console.log('Oluşturuldu:', data));

Read (Okuma): GET yöntemiyle istek gönderilir.

  • Tüm kaynakları okuma: koleksiyonun ana endpoint'ine GET isteği.
  • Belirli bir kaynağı okuma: kaynağın kimliğini içeren endpoint'e GET isteği.
// Tümünü okuma
fetch('/api/items')
  .then(response => response.json())
  .then(data => console.log('Tüm öğeler:', data));

// Belirli bir öğeyi okuma
fetch('/api/items/123')
  .then(response => response.json())
  .then(data => console.log('Öğe 123:', data));

Update (Güncelleme): PUT veya PATCH yöntemiyle, kaynağın kimliğini içeren endpoint'e istek gönderilir.

  • PUT: mevcut kaynağın tam değişimi.
  • PATCH: kaynağın kısmi güncellemesi.
// Güncelleme (PUT)
fetch('/api/items/123', {
  method: 'PUT',
  headers: {
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ name: 'Güncellenmiş Öğe' }),
})
  .then(response => response.json())
  .then(data => console.log('Güncellendi:', data));

// Kısmi güncelleme (PATCH)
fetch('/api/items/123', {
  method: 'PATCH',
  headers: {
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ description: 'Yeni Açıklama' }),
})
  .then(response => response.json())
  .then(data => console.log('Yama yapıldı:', data));

Delete (Silme): DELETE yöntemiyle, kaynağın kimliğini içeren endpoint'e istek gönderilir.

fetch('/api/items/123', {
  method: 'DELETE',
})
  .then(response => {
    if (response.ok) {
      console.log('Başarıyla silindi');
    } else {
      console.error('Silme başarısız');
    }
  });

REST API ile bağlantı:

CRUD işlemleri, REST (Temsili Durum Transferi) ilkeleriyle yakından ilişkilidir; burada HTTP yöntemleri, bu işlemleri kaynaklar üzerinde gerçekleştirmek için kullanılır:

CRUD HTTP Yöntemi
Create POST
Read GET
Update PUT/PATCH
Delete DELETE

Frontend'te CRUD uygulaması, bu HTTP isteklerini backend API'ye göndermeyi ve alınan yanıtları işlemeyi içerir. Sıkça HTTP ile çalışma kütüphaneleri (örneğin, Axios, Fetch API) ve durum/UI yönetimi için framework/kütüphaneler (örneğin, React, Vue, Angular) kullanılır.