TypeScript Academy · Lektion

OpenAPI-codegen: Automatisk genererede typer

Generér TypeScript-typer fra OpenAPI-specifikationer

Lektion 3 af 413 trin

OpenAPI-codegen: Automatisk genererede typer er en gratis TypeScript Academy-lektion på CoddyKit. Dette er lektion 3 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i TypeScript Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. TypeScript Academy-kurset indeholder 4 lektioner i alt.

Velkommen

OpenAPI-codegen genererer TypeScript-typer og klientkode fra API-specifikationer, så manuel vedligeholdelse af typer bliver unødvendig.

Hvorfor codegen

Manuel skrivning af typer til store API'er er fejlbehæftet, og typerne kommer let ud af synkronisering. Codegen udleder typer fra den eneste sandhedskilde: OpenAPI-specifikationen.

openapi-typescript

openapi-typescript genererer TypeScript-typer fra en OpenAPI-specifikationsfil.
npm install -D openapi-typescript
npx openapi-typescript ./api.yaml -o ./src/types/api.ts

Genererede typer

Værktøjet genererer typer for stier, operationer og skemaer.
import type { paths } from './types/api';
type GetUserResponse = paths['/users/{id}']['get']['responses']['200']['content']['application/json'];

openapi-fetch-klient

Brug openapi-fetch sammen med de genererede typer for at få en fuldt typet klient.
import createClient from 'openapi-fetch';
const client = createClient<paths>({ baseUrl: 'https://api.example.com' });
const { data, error } = await client.GET('/users/{id}', { params: { path: { id: 1 } } });

Swagger Codegen

Swagger Codegen genererer komplette klient-SDK'er i TypeScript.
npm install @openapitools/openapi-generator-cli -g
openapi-generator-cli generate -i api.yaml -g typescript-axios -o ./src/client

orval

orval genererer React Query-hooks og Zod-skemaer fra OpenAPI-specifikationer.
npm install -D orval
orval --input api.yaml --output src/api

Hold typer synkroniseret

Kør codegen i CI for at opdage afvigelser mellem specifikationen og de genererede typer.

Skema-først API-udvikling

Definér først OpenAPI-specifikationen, generér derefter typer og klientkode, og implementér til sidst serveren.

MSW med genererede typer

Brug Mock Service Worker sammen med genererede typer til typesikker API-mocking i tests.

Typesikker konstruktion af URL'er

Genererede klienter håndhæver korrekte sti-parametre og strukturer for forespørgselsstrenge.

Hurtigt tjek

Hvad er den primære fordel ved at bruge OpenAPI TypeScript-codegen?

Opsummering

OpenAPI-codegen: Automatisk genererede typer: Du har fået styr på de vigtigste begreber og mønstre.
Gratis at komme i gang

Lær TypeScript med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
101
Lektioner
352

Ofte stillede spørgsmål

Er lektionen “OpenAPI-codegen: Automatisk genererede typer” gratis?

Ja — hele teksten til “OpenAPI-codegen: Automatisk genererede typer” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af TypeScript Academy-kurset, skal du opgradere til CoddyKit PRO. TypeScript Academy-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “OpenAPI-codegen: Automatisk genererede typer”?

Generér TypeScript-typer fra OpenAPI-specifikationer Du øver dig i TypeScript Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på TypeScript Academy?

Der kræves ingen tidligere erfaring. TypeScript Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 3 af 4.

Hvor lang tid tager lektionen “OpenAPI-codegen: Automatisk genererede typer”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne TypeScript Academy-lektion?

Ja. Alle TypeScript Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Typning af fetch-svar med generiske wrappers
  2. Runtime-validering med Zod
  3. OpenAPI-codegen: Automatisk genererede typer
  4. Oversigt over den typesikre tRPC-klient
← Tilbage til TypeScript Academy