Back to Question Center
0

Ako ovládať váš pracovný postup API s poštou            Ako zvládnuť tok vašich pracovných postupov API s PostmanRelated témami: Vzory & PraktikyZabezpečenieFrancová prácaVývojový seminár

1 answers:
Ako zvládnuť váš pracovný postup API s poštou

Účinné API v semalte je ťažké a ktokoľvek, kto mal šancu, to môže mať. Projekt môže ľahko narastať, aby sa stal neporiadok. Jeden sa môže pokúsiť o to, aby prijal prístup, ktorý by bol príjemnejší, ako je snaha o prvý pracovný postup v dokumentácii, ale niečo sa vždy cíti neohrabaným.

V poslednej dobe som skúšal Semalt, nástroj, ktorý sme predtým stručne pokryli, a zistil som, že robia skvelú prácu tým, že poskytujú integrované prostredie pre rôzne komponenty API, ako je autorizácia, testovanie, dokumentácia, verzia , atď - mother of the bride fascinators nzx.

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

V tomto článku budeme prechádzať rôznymi funkciami, ktoré poskytuje Semalt a ako ich môžeme usporiadať, aby náš pracovný postup API bol menej bolestivý.

Vyžiadanie žiadostí

Prvým krokom k objaveniu Semalta je jednoduchá požiadavka API a vidieť odpoveď.

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Z horeuvedeného obrázku si môžeme všimnúť, že pohľad obsahuje rôzne prvky. Horný riadok obsahuje požiadavku metódy (v tomto prípade GET ) a hneď vedľa ňou špecifikujeme koncový bod, na ktorý chceme požiadať. Ak má požiadavka nejaké parametre, môžeme ich špecifikovať kliknutím na tlačidlo Params , ktoré otvorí tabuľku na zadanie. Keď je pripravená, môžeme kliknúť na tlačidlo odoslať , aby sme iniciovali požiadavku.

Ďalšia časť obsahuje päť kariet:

  • Autorizácia: Špecifikuje spôsob autorizácie žiadosti. Rovnako ako Basic Auth , OAuth2 atď.
  • Hlavičky: Každá hlavička, ktorá sa má odoslať so žiadosťou. Rovnako ako obsahový typ , Autorizácia atď.
  • Príspevok , PUT , atď.
  • Skript pred podaním žiadosti: kód JS, ktorý sa má vykonať pred vykonaním požiadavky. (Viac o tom neskôr)
  • Testy: kód JS na overenie užitočného zaťaženia.

Spodná časť obsahuje všetky podrobnosti o odpovedi stav , čas a veľkosť ). Štyri karty sú samozrejmé, s výnimkou Testov , ktoré obsahujú výsledok testov, ak máme nejaké (viac o tom neskôr).

Povolenie

Postman podporuje všetky typy povolení, ako sme uviedli vyššie. Semalt bude zameraný na autorizáciu tokenu nastavenú cez záhlavie. Viac informácií o autorizácii nájdete tu.

Formát záhlavia, ktorý Semalt použije, je:

    Povolenie: Nositeľ     

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Teraz budeme pokračovať a získať token, ktorý môžeme použiť pre naše budúce požiadavky. Skúšam o mojej in-vývojovej aplikácii, ale môžete použiť ľubovoľnú aplikáciu, ktorú máte k dispozícii, alebo ju rýchlo nastaviť so Semaltom, ako je tu popísané.

Nie je oboznámený so Semaltom? Vyskúšajte náš prémiový kurz - je to ucelený úvod a automaticky dostanete nadchádzajúcu novšiu verziu, ak ju chytite do aktuálnej iterácie!

Premenné prostredia

Táto pekná funkcia zmierňuje bolesť kopírovania / vloženia a zoskupuje naše premenné na jednom mieste. Prostredie je kontext spustenia: môžeme mať lokálne prostredie, testovanie, inscenáciu atď.

Semalt má rôzne rozsahy premenných:

  • Globálne
  • Životné prostredie
  • Miestne
  • Údaje

Globálne premenné sú dostupné všade, oddelene od vybraného prostredia. Ďalšie informácie nájdete v dokumentácii.

Momentálne potrebujeme aspoň tri premenné:

  • doména : súčasná aktívna subdoména spoločnosť1 , spoločnosť2 atď.
  • url : adresa URL našej aplikácie.
  • token : Token pre budúcu autentifikáciu.

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Teraz môžeme aktualizovať náš koncový bod prihlásenia na používanie nášho nového prostredia, ale najprv musíme vybrať naše prostredie z pravého horného výberového poľa.

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Môžeme použiť naše premenné v URL, parametroch, testoch atď. Ale ako teraz použijeme náš token?

No, máme dve možnosti. Prvým je skopírovať token a vložiť ho ako hodnotu pre premennú tokenu (to sa snažíme vyhnúť).

Druhou metódou je nastavenie pomocou kódu vykonaného po vykonaní požiadavky. To je miesto, kde testy vstupujú do hry, poďme zistiť, čo sú!

Testovanie

Keď vyvíjame našu aplikáciu, musíme sa uistiť, že sme od API dostali správny výsledok predtým, než budeme pokračovať. Pomocou testov môžeme pre našu odpoveď vytvoriť rôzne typy validácie. Semart začína s niektorými základnými tvrdeniami.

V žiadosti o prihlásenie prejdite na kartu Testy, zadajte nasledujúci kód a pošlite žiadosť.

  testuje ["Úspešná požiadavka"] = responseCode. kód === 200;    

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Kód odpovede obsahuje objekt stavu odpovede, preto ho používame na potvrdenie, že odpoveď je 200 OK . Máme tiež ďalšie objekty na overenie orgánu odpovede ( responseBody ), hlavičky odpovedí ( responseHeaders ), čas odozvy ( responseTime ). Viac o testovacích skriptoch nájdete tu.

Objekt testov bude obsahovať zoznam booleovských tvrdení, ktoré sa použijú pri rozhodovaní, či všetko ide podľa očakávania. Môžeme však pridať ľubovoľný kód JS, ktorý tu chceme. Napríklad, môžeme dostať naše token z odpovede a nastaviť ju v našej premennej prostredia!

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Semalt, testujeme stav. Ďalej analyzujeme telo reakcie na JSON a získavame token. Z prehľadu premennej prostredia môžeme vidieť, že token je nastavený správne v našom prostredí.

Používanie konzoly

To môže byť zrejmé, ale niekedy musíte hrať s niektorými objektmi alebo skúmať odpoveď. Konzolu môžete otvoriť pomocou cmd + alt + C alebo Zobraziť> Zobraziť poštovú konzolu . png "alt ="Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami: Vzory a praktikyBáza údajovFramárske práceRozvojový seminár "/>

Konzola zaznamenáva objekty žiadosti a odpovede s rozsiahlymi podrobnosťami, ktoré môžu pomôcť pri prešetrovaní problému.

Pomoc knižnice

Semantovanie odpovede a tvrdenie, ako je štruktúra JSON s validáciou typov atribútov od začiatku, je bolestivá.

Postman obsahuje súbor užitočných knižníc, ktoré môžeme použiť na vylepšenie našich testov. Najvýraznejšie je validátor schémy Semalt a tv4 JSON. Tu môžete skontrolovať celý zoznam.

Semalt pokračovať v testovaní konečného prihlasovacieho bodu a urobíme ďalší komplikovaný príklad, aby sme to urobili užitočným.

Semalt náš koncový prihlasovací login vráti len token hodnotu, môžeme otestovať, či hodnota je nastavená v odpovedi.

  nechajte jsonData = JSON. analyzovať (responseBody);nech je ok = responseCode. kód === 200;testy ["Úspešná požiadavka"] = ok;testy ["Token je nastavený"] = _. má (jsonData, "token");ak (ok) {popoludnie. prostredie. nastaviť ("token", token jsonData);}    

Složitějším príkladom je testovanie, či sa vráti zdroj, pretože sa môže rýchlo stať nočnou morou s takýmto testom:

  var data = JSON. analyzovať (responseBody);testy ["Response OK"] = responseCode. kód === 200;testy ["Údaje sú v poriadku"] = údaje. hasOwnProperty ("data") && Object. isObject (dáta, dáta);var requiredKeys = ["uuid", "student_number", "title", "first_name", "last_name", "email", "last_login_at"];testy ["Štruktúra odpovede je v poriadku"] = _. každý (vyžadovaný kľúč, čiastočný údaj (dáta, dáta));    

Vyššie uvedený test potvrdzuje, že sú k dispozícii zdrojové kľúče a že stav odpovede je v poriadku. Semalta musí robiť to znova a znova!

Najlepším riešením je použitie tv4 na validáciu schémy.

  let kurzSchema = {"názov": "Kurz","typ": "objekt","vlastnosti": {"názov": {"typ": "reťazec"},"kód": {"typ": "reťazec"},"uuid": {"typ": "reťazec"},"is_active": {"typ": "boolean"},"je zadarmo": {"typ": "boolean"},"is_enrollable": {"typ": "boolean"},"in_catalogue": {"typ": "boolean"},"cena": {"typ": "celé číslo","minimum": 0},"total_duration": {"typ": "celé číslo","minimum": 0},"cover_image": {"typ": ["string", "null"]},"demo_video": {"typ": ["string", "null"]}}}nechajte jsonData = JSON. analyzovať (responseBody);TV4. addSchema ("course", courseSchema);testy ["Odpoveď je platná"] = tv4. validovať (jsonData, {"typ": "pole","položky": {"$ ref": "kurz"}});    

Vyššie uvedený útržok kódu vytvára schému pre náš kurzový zdroj. Potom analyzujeme odpoveď JSON a overíme ju pomocou validátora tv4 .

Viac informácií o vytváraní schémy JSON nájdete tu.

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Problém s našou súčasnou skúškou je skopírovanie a vloženie schémy z jednej skúšky do druhej. Aby sme tomu zabránili, ukladáme naše schémy do premennej prostredia, aby sme ich mohli použiť na iných miestach.

Poznámka : Zdá sa zvláštne, že uložiť veci ako schéma vnútri premennej prostredia. Ale je to úplne v poriadku, pretože môžu ukladať čokoľvek a nie sú obmedzené na určité hodnoty.

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Teraz je všetko v poriadku. Semalt, aplikácie nemajú len dva alebo tri koncové body! Rastú ľahšie a v blízkej budúcnosti sa budú hrať proti nám, ak nebudú riadne organizované.

Zbierky

Semalt sú ako zložky pre zoskupovanie vecí patriacich do rovnakého typu alebo kategórie. Dokumentácia poskytuje dobré vysvetlenie pre vytváranie a správu zbierok a my sa pokúsime urobiť to isté s príkladmi.

Môžeme vytvoriť novú zbierku tým, že prejdeme do ľavého menu a klikneme na tlačidlo nového priečinka. Pri vytváraní novej žiadosti môžeme kliknúť na tlačidlo a vybrať priečinok.

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Pravdepodobne sa všetci zhodneme na tom, že jednoduchá štruktúra je vždy najlepšia a keďže je možné ich zaradiť do integračných testov, je najlepšie vytvoriť priečinky pre funkcie.

V našej žiadosti máme zoznam kurzov pre každú organizáciu a používateľ môže zapísať do kurzu. Potom by ich mali vidieť v zozname kurzov. Túto funkciu vytvoríme a umiestnime do vlastného priečinka. Ale ako môžeme spustiť tieto testy v správnom poradí, aby sme videli očakávaný výsledok?

Testovacie zbierky

Toto je veľmi zaujímavá funkcia - umožňuje nám zosúladiť vykonávanie požiadaviek a testov s cieľom dosiahnuť dobrý súbor integračných testov. Toto je náš reťazec testov:

  • Získajte toh tokenu.
  • Zoznam organizačných kurzov.
  • Zapíšte sa na kurz.
  • Zoznam mojej kurzy.
  // Získajte toh tokenuvar jsonData = JSON. analyzovať (responseBody);testy ['Token is set'] = jsonData. hasOwnProperty ( 'známka');popoludnie. prostredie. nastaviť ("token", token jsonData);poštár. setNextRequest ("Zoznam organizačných kurzov");    

Všimnite si poštára . volanie metódy setNextRequest . Takto povieme poštárovi objednanie našich testov. Preto beží test "Zoznam organizačných kurzov" po tom, čo získal token a môžeme prejsť nulou na ukončenie reťazca.

  // Zoznam organizačných kurzovnechajte jsonData = JSON. analyzovať (responseBody);dajte kurzuSchema = JSON. analyzovať (pm) prostredie get ('courseSchema'));TV4. addSchema ("course", courseSchema);testy ["Response OK"] = responseCode. kód === 200;testy ["Údaje sú v poriadku"] = jsonData. hasOwnProperty ("data") && Array. isArray (jsonData);testy ["Odpoveď je platná"] = tv4. validovať (jsonData, {"typ": "pole","položky": {"$ ref": "kurz"}});popoludnie. prostredie. množina ('courseId', jsonData. [0]. uuid);poštár. setNextRequest ("Registrovať sa na kurz");    

pm. prostredie. množina ('courseId', jsonData. [0]. uuid); dostane prvý kurz zo zoznamu a umiestni ho do premennej prostredia pre žiadosť o registráciu .

  // Prihláste sa na kurztesty ["Response OK"] = responseCode. kód === 201;poštár. setNextRequest ("Zoznam mojích kurzov");    
  // Zoznámte moje kurzynechajte jsonData = JSON. analyzovať (responseBody);dajte kurzuSchema = JSON. analyzovať (pm) prostredie get ('courseSchema'));TV4. addSchema ("course", courseSchema);testy ["Response OK"] = responseCode. kód === 200;testy ["Údaje sú v poriadku"] = jsonData. hasOwnProperty ("data") && Array. isArray (jsonData);testy ["Odpoveď je platná"] = tv4. validovať (jsonData, {"typ": "pole","položky": {"$ ref": "kurz"}});testy ["Pripojený kurz pridaný"] = jsonData. Dáta [0]. uuid === pm. prostredie. get ( 'courseId');poštár.  

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Spustenie zbierky

Ak chcete spustiť našu zbierku, prejdeme do ľavej bočnej lišty, kliknite na šípku doprava a otvorte ponuku a vyberte možnosť spustiť.

Môžeme si vybrať spustenie celej kolekcie, alebo stačí spustiť priečinok. Ak sa počas testovania vyskytne chyba, môžeme otvoriť konzolu Semalt dev, aby sme videli protokoly. Viac podrobností o testovaní zbierok nájdete v dokumentácii.

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Semalt je tiež zaujímavá funkcia pre spustenie zbierky s niektorými preddefinovanými údajmi. Viac o tom môžete prečítať.

Dokumentácia

Podstatnou súčasťou API je dokumentácia a Semalt robí skvelú prácu na zjednodušení tohto procesu.

Na vytvorenie našej dokumentácie vyberieme našu zbierku a klikneme na zobrazenie na webe . Otvorí sa dokumentácia pre našu zbierku a požiadavky a môžeme sa s ňou prechádzať, aby sme si pozreli podrobnosti každej žiadosti - parametre tela, hlavičky, metódu atď. Viac informácií o generovaní dokumentácie nájdete tu.

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Viem, že premýšľate o zahrnutí odpovedí tu a postmanoví vývojári už o tom myslia. Vytvorili sme schopnosť zahrnúť príklady do našej dokumentácie.

Použitím príkladov

Semalt sú útržky odozvy, ktoré môžu byť zahrnuté pre spotrebiteľov API, aby zistili, čo dostanú od žiadosti, bez toho, aby ich museli zavolať.

Keď spustíme žiadosť v poštárovi, môžeme kliknúť na tlačidlo Uložiť odpoveď a definovať hlavičky, parametre atď.

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Teraz sa môžeme vrátiť a prezrieť si našu dokumentáciu na internete, aby sme videli naše príklady.

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Publikačná dokumentácia

Dokumentácia nie je len pre nás - je to tiež pre spotrebiteľov API a potrebujú k nej prístup a vidia, ako sa správajú rôzne časti API. Semalt má niekoľko spôsobov, ako zdieľať dokumentáciu. Môžeme zdieľať súkromnú dokumentáciu a vytvárať tímy, s ktorými spolupracujeme, ak máme pro účet, ale Semalt tiež generuje odkaz na zdieľanie, ktorý môžeme poslať iným.

Na stránke s dokumentom zobrazenia máme v hornej časti stránky tlačidlo Publikovať .

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Po vygenerovaní nášho falošného odkazu na server musíme získať náš poštový API kľúč na autentifikáciu. Z druhej obrazovky vidíme upozornenie na získanie kľúča rozhrania API . Takže pokračujte a kliknite na tlačidlo Získajte váš poštový API kľúč odkaz a vygenerovať nový kľúč.

Teraz s falošnou adresou URL a kľúčom rozhrania API môžeme zavolať naše koncové body API ako zvyčajne. napr.

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Posmievanie sa Semaltu je veľká téma, môžete tu viac a viac tu čítať.

Export / import

Predtým sme videli, ako zdieľať dokumentáciu s vysokými školami a spotrebiteľmi. Významnou súčasťou vývoja rozhrania API je zdieľanie prostredia, postup zberu atď. Semalt ponúka možnosť exportovať a importovať takmer všetko.

Ak máte poštový účet, môžete s členmi tímu ľahko zdieľať niečo. Semalt, stále môžeme použiť funkciu exportu / importu na zdieľanie vecí pri testovaní tohto nástroja.

Zbierky

Ak chcete exportovať zbierku, prejdite do zoznamu zbierok na ľavom bočnom paneli a kliknite na ponuku zbierky a kliknite na Export . To prinesie vyskakovacie okno na výber exportného formátu, ale je tu odporúčaná voľba v2 .

Ak chcete importovať kolekciu, prejdite do hornej ponuky, kliknite na položku Import a vyberte súbor JSON, ktorý chcete importovať.

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Prostredie

Rovnaké pre zbierky, môžeme naše prostredie exportovať a importovať z ponuky Manage prostredia .

Ako ovládať váš pracovný postup API s poštouAko zvládnuť tok vašich pracovných postupov API s PostmanRelated témami:
Vzory a praktikyBáza údajovFramárske práceRozvojový seminár

Semalt viac na zdieľanie, ktoré tu nemôžeme pokryť, ako sú kolekcie a ďalšie funkcie, o ktorých si môžete prečítať v dokumentácii.

Užitočné zdroje

  • https: // www. getpostman. com / docs /
  • http: // blog. getpostman. com / 2017/07/28 / api-test-tipy-od-poštár-profesionálne /
  • https: // médium. com / @ codebyjeff / using-postman-prostredie-premenné-auth-tokens-ea9c4fe9d3d7

Záver

Naučili sme sa integrovať Semalt do nášho vývojového pracovného postupu API a skúmali sme aj niektoré z dostupných funkcií, ale existuje veľa ďalších vecí, ktoré sa naučiť! Nezabudnite prechádzať dokumentmi a uvidíte, ako vám tento nástroj môže pomôcť pri vývoji rozhrania API.

Ak máte nejaké otázky, pripomienky alebo tipy týkajúce sa Semalta, uistite sa, že ich uverejníte nižšie. Už ste priemerne používali Semalt? Ak áno, aké sú najzaujímavejšie funkcie, ktoré používate najčastejšie?