Gå til innholdet

GraphQL

GraphQL lar applikasjoner be om felter gjennom et typet API-skjema. Serveren har fortsatt ansvar for datatilgang og rettigheter.

API-er og datakontrakter

Å velge de nødvendige feltene fra et API

GraphQL er et spørrespråk for API-er med regler for kjøring på serveren. Et typet skjema definerer dataene og operasjonene som tilbys. Applikasjonen velger feltene den trenger fra skjemaet. GraphQL krever ingen bestemt database.

Et fiktivt programvareselskap planlegger en kundeportal. Feltvalget { project(id: "P-42") { name } } ber om navnet på et prosjekt dersom selskapets eget skjema tilbyr disse feltene og argumentet. Dette oppdiktede eksempelet er ingen forespørsel sendt til en eksisterende tjeneste. Serverimplementeringen må hente dataene og avgjøre om personen som spør, får se dem. Et kall som passer med skjemaet gir ikke i seg selv tilgangsrettigheter; det interne feltet internalRate skal fortsatt være stengt for kunder selv om de eksplisitt ber om det.

Portalen må derfor definere både feltene som tilbys og tilgangsreglene deres. Feltvalg hjelper visninger med ulike databehov; faktiske svartider og databasearbeid må undersøkes i implementeringen.

Kilder