Sobes.tech
Junior

Kako se implementira CRUD?

sobes.tech АИ

Одговор од АИ

CRUD se sastoji od Create, Read, Update, Delete. To su osnovne operacije koje se vrše nad podacima.

Create (Kreiranje): Slanje zahteva sa metodom POST na endpoint za kreiranje novog resursa. Telo zahteva obično sadrži podatke novog objekta.

// Primeri sa korišćenjem Fetch API
fetch('/api/items', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ name: 'New Item' }),
})
  .then(response => response.json())
  .then(data => console.log('Kreirano:', data));

Read (Čitanje): Slanje zahteva sa metodom GET.

  • Čitanje svih resursa: GET zahtev na glavni endpoint kolekcije.
  • Čitanje konkretnog resursa: GET zahtev na endpoint sa identifikatorom resursa.
// Čitanje svih
fetch('/api/items')
  .then(response => response.json())
  .then(data => console.log('Svi predmeti:', data));

// Čitanje konkretnog
fetch('/api/items/123')
  .then(response => response.json())
  .then(data => console.log('Predmet 123:', data));

Update (Ažuriranje): Slanje zahteva sa metodom PUT ili PATCH na endpoint sa identifikatorom resursa.

  • PUT: potpuna zamena postojećeg resursa.
  • PATCH: delimično ažuriranje resursa.
// Ažuriranje (PUT)
fetch('/api/items/123', {
  method: 'PUT',
  headers: {
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ name: 'Updated Item' }),
})
  .then(response => response.json())
  .then(data => console.log('Ažurirano:', data));

// Delimično ažuriranje (PATCH)
fetch('/api/items/123', {
  method: 'PATCH',
  headers: {
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ description: 'New Description' }),
})
  .then(response => response.json())
  .then(data => console.log('Patch-ovano:', data));

Delete (Brisanje): Slanje zahteva sa metodom DELETE na endpoint sa identifikatorom resursa.

fetch('/api/items/123', {
  method: 'DELETE',
})
  .then(response => {
    if (response.ok) {
      console.log('Uspešno obrisano');
    } else {
      console.error('Brisanje nije uspelo');
    }
  });

Veza sa REST API:

CRUD operacije su usko povezane sa principima REST (Representational State Transfer), gde se HTTP metode koriste za izvršavanje ovih radnji nad resursima:

CRUD HTTP Metod
Create POST
Read GET
Update PUT/PATCH
Delete DELETE

Na frontendu, implementacija CRUD uključuje slanje ovih HTTP zahteva ka backend API-ju i obradu primljenih odgovora. Često se koriste biblioteke za rad sa HTTP (npr. Axios, Fetch API) i okviri/biblioteke za upravljanje stanjem i UI (npr. React, Vue, Angular).