Aller au contenu

Otkrivanje problema u uvezenom API-ju

Kada uvezete API (OpenAPI, Swagger i ostale podržane formate), Restorm čuva strukturiranu dokumentaciju API-ja u njegovoj mapi okruženja. Odmah nakon uvoza — i svaki put kada ponovno otvorite datoteku — Restorm nenametljivo projicira tu dokumentaciju u dizajn i pokreće istu provjeru valjanosti kakvu primjenjuje dizajner API-ja, u potpunosti u pozadini. Nikada ne blokira uvoz i nikada ne prekida ono što radite.

Ako ništa ne pronađe, ništa ne vidite. Ako pronađe strukturne probleme, upućuje vas na njih na dva mjesta.

Mapa okruženja koja nosi označeni API prikazuje mali „!“ na desnoj strani svog retka. To je signal na prvi pogled da dizajn ovog API-ja ima nešto vrijedno pažnje — i nestaje sam od sebe čim je API ponovno ispravan (nakon ponovnog uvoza ili ažuriranja API-ja koje ga ispravi).

Otvorite mapu okruženja i ona dobiva karticu „Problemi“. Kartica se pojavljuje samo kada su otkriveni problemi — ispravan API je nikada ne prikazuje.

Kartica „Problemi“ mape okruženja uvezenog API-ja: upozorenje, zatim problemi grupirani po vrsti — „Nekoliko ruta odgovara na istu metodu i putanju“, „Neke rute ne deklariraju nikakav odgovor“, „Neke rute nalaze se na putanji koju rezervira poslužitelj dizajna“ — svaki navodi točne rute na koje utječe, jedna je proširena kako bi prikazala dokumentaciju te rute

Problemi su grupirani po vrsti, tako da se dvadeset dupliciranih ruta prikazuje kao jedan redak s brojem umjesto dvadeset zasebnih stavki. Ispod svake vrste Restorm navodi točne obuhvaćene entitete — ruta prikazuje svoj HTTP glagol i svoju stvarnu putanju te se proširuje na dokumentaciju te rute, tako da vidite što deklarira bez napuštanja kartice.

Provjere zrcale one dizajnera API-ja, pa vrste problema na koje možete naići uključuju:

  • duplicirane rute — dvije rute koje odgovaraju na istu metodu i putanju;
  • nedostajući odgovori — ruta koja ne deklarira nikakav odgovor;
  • rezervirane putanje — ruta koja se nalazi na putanji koju rezervira Mock Server (/swagger.json, /graphql, …) i koja nikada ne bi odgovorila;
  • problemi s ograničenjima — nevaljani uzorak ili minimum veći od svojeg maksimuma.

Popis je samo za čitanje: govori vam što treba ispraviti, a vi to ispravljate na izvoru (ponovno uvezite ispravljenu specifikaciju ili uredite API). Ponovno se izračunava pri događajima koji mijenjaju API — otvaranje datoteke, uvoz, ažuriranje API-ja — a ne pri svakom pritisku tipke.