0Pricing
TypeScript Academy · Lektion

Laufzeitvalidierung mit Zod

Validieren Sie API-Antworttypen mit Zod-Schemas und leiten Sie sie daraus ab.

Laufzeitvalidierung mit Zod ist eine kostenlose TypeScript Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des TypeScript Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der TypeScript Academy-Kurs umfasst insgesamt 4 Lektionen.

Willkommen

Zod ist eine TypeScript-orientierte Bibliothek zur Schema-Validierung. Sie leitet Typen aus Schemata ab und bietet sowohl Validierung zur Laufzeit als auch Typen zur Compile-Zeit.

Zod installieren

Installieren Sie Zod in Ihrem Projekt.
npm install zod

Grundlegendes Schema

Definieren Sie ein Schema und leiten Sie daraus seinen TypeScript-Typ ab.
import { z } from 'zod';
const UserSchema = z.object({
  id: z.number(),
  name: z.string(),
  email: z.string().email(),
});
type User = z.infer<typeof UserSchema>;

Daten parsen

Verwenden Sie schema.parse(), um zu validieren. Bei einem Fehler wird eine Exception ausgelöst.
const user = UserSchema.parse({ id: 1, name: 'Alice', email: 'a@b.com' });
// user is typed as User

Sicheres Parsen

Verwenden Sie safeParse(), damit Fehler als Werte zurückgegeben werden, statt eine Exception auszulösen.
const result = UserSchema.safeParse(unknownData);
if (result.success) {
  console.log(result.data); // User
} else {
  console.log(result.error.issues);
}

Array- und Objekt-Schemata

Setzen Sie mit z.array und z.object komplexe Schemata zusammen.
const UsersSchema = z.array(UserSchema);
const CreateUserSchema = UserSchema.omit({ id: true });

Optional und nullable

Markieren Sie Felder als optional oder nullable.
const Schema = z.object({
  name: z.string(),
  bio: z.string().optional(),   // string | undefined
  avatar: z.string().nullable(), // string | null
});

Enum und Union

Validieren Sie Enum-Werte und Union-Typen.
const StatusSchema = z.enum(['active', 'inactive', 'banned']);
const InputSchema = z.string().or(z.number());

Transformieren

Transformieren Sie geparste Werte.
const PriceSchema = z.string().transform(s => parseFloat(s));

Zod in API-Routen

Validieren Sie Request-Bodies in Express-/Next.js-API-Routen.
app.post('/users', async (req, res) => {
  const result = CreateUserSchema.safeParse(req.body);
  if (!result.success) return res.status(400).json(result.error);
  const user = await db.create(result.data); // typed!
  res.json(user);
});

Benutzerdefinierte Validatoren

Fügen Sie Schemata benutzerdefinierte Verfeinerungen hinzu.
const PasswordSchema = z.string().min(8).refine(
  s => /[A-Z]/.test(s), { message: 'Need uppercase' }
);

Schnelltest

Welche Methode stellt Zod bereit, um Daten zu validieren, ohne bei einem Fehler eine Exception auszulösen?

Zusammenfassung

Validierung zur Laufzeit mit Zod: Sie beherrschen die zentralen Konzepte und Muster.

Häufig gestellte Fragen

Ist die Lektion „Laufzeitvalidierung mit Zod“ kostenlos?

Ja — der vollständige Text von „Laufzeitvalidierung mit Zod“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des TypeScript Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der TypeScript Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Laufzeitvalidierung mit Zod“?

Validieren Sie API-Antworttypen mit Zod-Schemas und leiten Sie sie daraus ab. Du übst TypeScript Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um TypeScript Academy zu starten?

Keine Vorkenntnisse erforderlich. TypeScript Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.

Wie lange dauert die Lektion „Laufzeitvalidierung mit Zod“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser TypeScript Academy-Lektion Code schreiben und ausführen?

Ja. Jede TypeScript Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Fetch-Antworten mit generischen Wrappern typisieren
  2. Laufzeitvalidierung mit Zod
  3. OpenAPI-Codegenerierung: automatisch erzeugte Typen
  4. Überblick über typsichere tRPC-Clients
← Zurück zu TypeScript Academy