Articles



JSON:API ima mnogo koncepata u svojoj specifikaciji, ali nisu svi ovde dokumentovani. Međutim, korisnici modula ne moraju u potpunosti da razumeju sve koncepte specifikacije da bi bili produktivni sa ovim modulom. Ako ipak želite da dublje istražite kako su JSON:API dokumenti strukturirani, zašto modul nešto radi na jedan ili drugi način, ili jednostavno želite da naučite više o dizajnu modula, preporučuje se čitanje specifikacije na jsonapi.org.


Kolekcije su liste resursa. Na decoupled sajtu, one se koriste za pravljenje stvari kao što su lista „Novi sadržaj“ ili sekcija „Moj sadržaj“ na klijentskoj strani.
Međutim, kada pošaljete nefiltrirani zahtev ka kolekcionom endpoint-u kao što je /jsonapi/node/article
, dobićete svaki članak koji imate dozvolu da vidite.
Bez filtera, ne možete dobiti samo svoje članke ili samo članke o lamama.


TL;DR: Koristite query string kao što je ?include=field_comments.uid
da uključite sve entitete na koje se referiše field_comments
i sve entitete na koje se referiše uid
na tim entitetima!
JSON:API vam pomaže da eliminišete HTTP zahteve tako što omogućava da navedete putanje odnosa (relationship paths) koje želite da budu uključene u odgovor. Kako?


Paginacija može biti iznenađujuće kompleksna tema. Lako je upasti u zamke i ne pratiti najbolje prakse. Ova stranica će vam pomoći da radite paginaciju „kako treba“. To znači, ako pročitate i razumete ovu stranicu, mislimo da će vaš klijent biti robusniji, spremniji za budućnost i olakšaće vam život kasnije.
Ako iz ovog vodiča zapamtite samo jednu stvar, neka to bude da ne treba da pravite svoje paginacione URL-ove.
Svaki paginirani odgovor iz JSON:API modula već sadrži link ka sledećoj strani kolekcije koji treba da koristite. Treba da pratite taj link.


JSON:API omogućava dohvatanje više resursa u jednom zahtevu, a ove rute se nazivaju "kolekcijske" rute. Možete preuzeti kolekciju resursa slanjem GET zahteva na baznu rutu resursa, npr. GET /jsonapi/node/article
bez uključivanja UUID-a. Po podrazumevanim postavkama, ovo će uključiti sve resurse navedenog tipa.
Filtriranje i sortiranje su dostupni po podrazumevanim postavkama na svim standardnim resursima.


JSON:API modul izlaže revizije entiteta kao verzije resursa, na način inspirisan RFC5829: Link Relation Types for Simple Version Navigation between Web Resources.
Trenutna ograničenja:


JSON:API podržava veoma jednostavnu višejezičnu funkcionalnost. Ne podržava napredne slučajeve upotrebe.


Ovaj odeljak sadrži primere i informacije po tipu zahteva: GET, POST, PATCH i DELETE
O primerima
Svi primeri su funkcionalni primeri koje možete isprobati bilo u pregledaču ili JSON klijentu (na primer: Postman). Potreban vam je standardni Drupal sajt, nekoliko Article čvorova i omogućen JSON:API modul.
