Hogyan biztosították az API-válaszok típusát? Használtak OpenAPI/Swagger-t vagy kódgenerálást?
sobes.tech MI
Válasz az MI-től
Az API-válaszok típusosságának biztosítása érdekében gyakran használnak OpenAPI (Swagger) specifikációkat, amelyek leírják a kérések és válaszok szerkezetét. Ezek alapján generálhatók típusok a frontendhez olyan eszközökkel, mint az openapi-generator vagy a swagger-codegen.
TypeScriptben népszerű az openapi-typescript könyvtár, amely az OpenAPI specifikációból generál típusokat. Ez lehetővé teszi az API-tól kapott adatok szigorú típusosítását, és elkerüli a hibákat a válaszok kezelésénél.
Az openapi-typescript használatának példája:
openapi-typescript api.yaml --output api-types.ts
A kódban:
import { paths } from './api-types';
típus UserResponse = paths['/users/{id}']['get']['responses']['200']['content']['application/json'];
function fetchUser(id: string): Promise<UserResponse> {
return fetch(`/users/${id}`).then(res => res.json());
}
Így a típusok automatikusan megfelelnek az API-specifikációnak, növelve a fejlesztés megbízhatóságát és kényelmét.
Ha nem használják az OpenAPI-t, akkor manuálisan is leírhatók a típusok, vagy kódgenerálás történhet GraphQL sémákból, ha az API GraphQL alapú.