Preskočiť na obsah

Časté otázky ​

Prečo môj zaregistrovaný endpoint vracia 404? ​

Metóda, verzia, balík a akcia požiadavky sa musia presne zhodovať s EndpointIdentifier a routa musí viesť na Api:Api:default. Pozrite si Začíname.

Môj handler vracia správne dáta, ale klient dostane 500. Prečo? ​

Odpoveď nezodpovedala žiadnemu deklarovanému výstupu a validácia výstupov je zapnutá. Pozrite sa na detail, alebo si prečítajte Výstupy.

Prečo produkcia hovorí len „wrong input"? ​

Detaily chýb sú v produkcii vypnuté, aj pre 400. Pozrite si Spracovanie chýb.

Ako ochránim endpoint tokenom? ​

Použite BearerTokenAuthorization alebo triedu pre API kľúč s repozitárom tokenov. Pozrite si Autorizáciu.

Prečo moja aplikácia v prehliadači dostáva CORS chybu? ​

Nastavte povolený origin a zapnite preflight. Pozrite si CORS.

Prečo v logu nie sú odpovede 401 a 429? ​

V 3.x presenter skončí pred loggerom. Pozrite si Logovanie.

Mám používať Problem Details? ​

Áno, v novom projekte: chyby podľa RFC 9457 majú jeden strojovo čitateľný tvar. Nie sú predvolené, lebo existujúci klienti čítajú message. Pozrite si Problem Details.

Dá sa API nastaviť bez zoznamu volaní addApi()? ​

Áno, od verzie 4.0.0 cez DI rozšírenie: jedna neon sekcia api: s endpointmi, autorizáciami, obmedzeniami požiadaviek, CORS a formátom chýb, skontrolovaná pri kompilácii kontajnera.

Dá sa endpoint zapísať priamo na triedu handlera? ​

Áno, od verzie 4.0.0: dajte na triedu #[Get(1, 'users')] (alebo Post, Put, Patch, Delete, Endpoint) a DI rozšírenie endpoint zaregistruje. Pozrite Endpointy z atribútov.

Po zmene sekcie api: sa kontajner neskompiluje. Čo s tým? ​

Prečítajte si celú správu. DI rozšírenie kontroluje konfiguráciu aj atribúty endpointov pri kompilácii kontajnera a každá správa hovorí, čo je zle, kde (neon kľúč alebo trieda a atribút) a ako to opraviť, často s príkladom alebo s návrhom „Did you mean“. Napríklad version: v1 zlyhá so správou the 'v' is added to the URL automatically (/v1/users). Use for example version: 1. Zlyhajú aj nastavenia, ktoré by potichu nerobili nič, napríklad atribút na metóde namiesto triedy, cors: mode popri allowedOrigins alebo '@sluzba' v úvodzovkách.

Ako publikujem OpenAPI? ​

Zaregistrujte OpenApiHandler ako endpoint. Pozrite si OpenAPI.

Ako prejdem z 2.x? ​

Postupujte podľa návodu na upgrade a changelogu.

Je k dispozícii kompletný projekt, ktorý si môžem spustiť? ​

Áno, 13, testovaných v CI: pozrite si Príklady.

Vydané pod licenciou MIT.