Ako testovať GraphQL pomocou Postmana

1. Prehľad

V tomto krátkom tutoriáli si ukážeme, ako testovať koncové body GraphQL pomocou Postmana.

2. Prehľad schémy a metódy

Použijeme koncové body vytvorené v našom výučbe GraphQL. Pripomíname, že schéma obsahuje definície popisujúce príspevky a autorov:

zadajte príspevok {id: ID! názov: Reťazec! text: Reťazec! kategória: Autor reťazca: Autor! } typ Autor {id: ID! meno: Reťazec! miniatúra: Reťazec príspevkov: [Príspevok]! }

Navyše máme metódy zobrazovania príspevkov a písania nových:

zadajte dopyt {recentPosts (count: Int, offset: Int): [Príspevok]! } typ Mutácia {writePost (nadpis: String !, text: String !, kategória: String): Príspevok! }

Pri použití mutácie na ukladanie údajov sa zobrazí ikona povinné polia sú označené výkričníkom. Všimnite si tiež, že v našom Mutácia, vrátený typ je Príspevok, ale v Dopyt, dostaneme zoznam Príspevok predmety.

Vyššie uvedenú schému je možné načítať v sekcii Postman API - stačí pridať Nové API s GraphQL zadajte a stlačte Vytvoriť zbierku:

Akonáhle načítame našu schému, môžeme ľahko napíšte vzorové dotazy pomocou podpory automatického dokončovania Postmana pre GraphQL.

3. GraphQL požiadavky v Postmani

Najskôr nám Postman umožňuje poslať telo vo formáte GraphQL - len sme si vybrali možnosť GraphQL nižšie:

Potom môžeme napísať natívny GraphQL dotaz, napríklad ten, ktorý nám poskytne titul, kategórie, a autor názov do sekcie DOPYT:

dopyt {recentPosts (count: 1, offset: 0) {title category autor {name}}}

A ako výsledok dostaneme:

{"data": {"recentPosts": [{"title": "Príspevok", "category": "test", "autor": {"name": "Autor 0"}}]}}}

Je to tiež možné poslať požiadavku v surovom formáte, ale musíme pridať Typ obsahu: aplikácia / graphql do sekcie hlavičiek. A v tomto prípade vyzerá telo rovnako.

Môžeme napríklad aktualizovať názov, text, kategória, dostať id a titul ako odpoveď:

mutácia {writePost (názov: "Príspevok", text: "test", kategória: "test",) {id názov}}

Typ operácie - ako dopyt a mutácia - je možné z tela dotazu vynechať, pokiaľ používame skratkovú syntax. V takom prípade nemôžeme použiť názov operácie a premenné, ale na ľahšie protokolovanie a ladenie sa odporúča použiť názov operácie.

4. Používanie premenných

V sekcii premenné môžeme vytvoriť schému vo formáte JSON, ktorá bude priraďovať hodnoty premenným. Takto sa vyhnete zadaniu argumentov do reťazca dotazu:

Môžeme teda upraviť Posledné príspevky telo v sekcii QUERY na dynamické priradenie hodnôt z premenných:

dopyt recentPosts ($ count: Int, $ offset: Int) {recentPosts (count: $ count, offset: $ offset) {id title text category}}

A môžeme upraviť sekciu GRAPHQL VARIABLES s tým, čo by sme chceli, aby boli naše premenné nastavené na:

{"count": 1, "offset": 0}

5. Zhrnutie

GraphQL môžeme ľahko otestovať pomocou Postmanu, ktorý nám tiež umožňuje importovať schému a generovať na ňu dotazy.

Zbierku žiadostí nájdete na GitHub.