To su tri tipa operacija, svaki mapiran na korijenski tip u shemi:
To su tri tipa operacija, svaki mapiran na korijenski tip u shemi:
query GetPost { # čitanje
post(id: "1") { title }
}
mutation AddComment { # pisanje; vraća stvoreni objekt kako bi klijent ažurirao svoj cache
addComment(postId: "1", text: "Nice!") {
id
text
}
}
subscription OnComment { # uživo: okida se svaki put kad se doda komentar
commentAdded(postId: "1") {
id
text
}
}
Mutacije primaju argumente (često input objekt) i trebale bi vratiti pogođene podatke kako bi se klijent mogao osvježiti bez drugog zahtjeva. Pravilo o sekvencijalnosti je bitno: dvije mutacije u jednom dokumentu — deposit pa withdraw — uvijek se izvršavaju tim redoslijedom, dok bi se dva polja upita mogla razriješiti istovremeno.
Ispitivači provjeravaju znate li da su upiti paralelni i bez nuspojava, dok su mutacije sekvencijalne, te da subscription treba transport sa stanjem (WebSocket/SSE). Vraćanje ažuriranih podataka iz mutacije praktični je detalj koji razdvaja one koji su isporučili GraphQL od onih koji su o njemu samo čitali.
Knjižnica IT pitanja za razgovore za posao s detaljnim odgovorima — od Juniora do Seniora.
Doniraj