Junior
Šta je REST API?
sobes.tech АИ
Одговор од АИ
REST API je arhitektonski stil za izgradnju distribuiranih sistema. Glavni principi REST:
- Bezdržavni: Svaki zahtev od klijenta ka serveru mora sadržavati sve potrebne informacije za obradu. Server ne čuva stanje klijenta između zahteva.
- Klijent-Server: Jasno razdvajanje odgovornosti između klijenta i servera. Klijent šalje zahteve, server ih obrađuje.
- Kešabilno: Server mora naznačiti da li odgovori mogu biti keširani od strane klijenta ili posrednika.
- Slojeviti sistem: Klijent ne mora nužno direktno komunicirati sa krajnjim serverom; može komunicirati putem posrednih slojeva (proxy, load balanceri).
- Ujednačen interfejs: Jedinstven i standardizovan način interakcije između klijenta i servera. Ovaj princip uključuje:
- Identifikaciju resursa: Resursi (podaci) se identifikuju putem URL-ova.
- Manipulaciju resursima putem reprezentacija: Klijent interaguje sa resursima, dobijajući njihove reprezentacije (npr. JSON, XML) i šaljući nove reprezentacije za izmenu.
- Samodovoljne poruke: Svaka poruka sadrži dovoljno informacija za razumevanje kako da se obradi.
- HATEOAS (Hypertext As The Engine Of Application State): Resursi moraju sadržavati linkove (hiperlinkove) na povezane resurse i dostupne akcije.
REST API obično koristi standardne HTTP metode za izvršavanje operacija nad resursima:
- GET: Dobijanje resursa ili kolekcije resursa.
- POST: Kreiranje novog resursa.
- PUT: Potpuna ažuriranja postojećeg resursa.
- PATCH: Delimična ažuriranja postojećeg resursa.
- DELETE: Brisanje resursa.
Primer JSON prikaza resursa:
{
"id": 1, // Identifikator
"name": "Resource Name", // Ime resursa
"description": "Detailed description of the resource." // Opis resursa
}
Testiranje REST API uključuje proveru:
- Funkcionalnosti (tačnost odgovora na zahteve).
- Rukovanja greškama.
- Performansi.
- Bezbednosti.
- Usklađenosti sa dokumentacijom.