TypeScript Academy · Oppitunti

Ajon aikainen validointi zodilla (johdanto)

Validoikaa JSON-vastaukset ajon aikana zod-skeemoilla, jotta turvallisuus ei perustu ainoastaan käännösaikaisiin tyyppeihin.

Oppitunti 2/28 vaihetta

Ajon aikainen validointi zodilla (johdanto) on ilmainen TypeScript Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/2. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu TypeScript Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. TypeScript Academy-kurssilla on yhteensä 2 oppituntia.

Johdanto

Tavoite: Lisätkää ajonaikaista turvallisuutta zod-kirjastolla. Käännösaikaiset tyypit eivät yksin riitä, joten skeemat tarkistavat ajantasaiset tiedot.

zod:n asentaminen

Asentakaa zod, suosittu ajonaikaiseen skeemojen validointiin tarkoitettu TS/JS-kirjasto.

npm install zod

Skeeman määrittäminen

Luokaa skeemoja z.object()-metodilla. Käyttäkää z.infer<typeof Schema>-rakennetta TS-tyyppien luomiseen skeemoista.

import { z } from "zod";

const UserSchema = z.object({
  id: z.number(),
  name: z.string()
});

type User = z.infer<typeof UserSchema>;

Schema.parse()

Kutsukaa Schema.parse()-metodia tietojen validoimiseksi. Se heittää virheen, jos JSON ei vastaa skeemaa.

async function getUser() {
  const res = await fetch("/user.json");
  const raw = await res.json();
  const parsed = UserSchema.parse(raw);
  console.log(parsed.id, parsed.name);
}

safeParse

safeParse palauttaa olion, jossa on kentät success ja error. Se on turvallisempi kuin poikkeusten heittäminen.

const result = UserSchema.safeParse(raw);
if (!result.success) {
  console.error(result.error);
} else {
  console.log(result.data);
}

Sisäkkäinen skeema

Skeemat voivat olla sisäkkäisiä: ne voivat sisältää taulukoita, olioita, valinnaisia kenttiä ja muuta vastaavaa.

const PostSchema = z.object({
  id: z.number(),
  title: z.string(),
  tags: z.array(z.string())
});

const raw = { id: 1, title: "Hello", tags: ["ts", "zod"] };
const post = PostSchema.parse(raw);

Validoinnin tarkistus

Pikatarkistus: Miksi JSON-tiedot kannattaa validoida jäsentämisen jälkeen zodilla?

Kertaus

Kertaus: zod-skeemat validoivat JSON-tiedot ajonaikaisesti. Käyttäkää parse- tai safeParse-metodia turvallisuuden varmistamiseen.

Aloita maksutta

Opi TypeScript tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
101
Oppitunnit
352

Usein kysytyt kysymykset

Onko oppitunti ”Ajon aikainen validointi zodilla (johdanto)” ilmainen?

Kyllä – oppitunnin ”Ajon aikainen validointi zodilla (johdanto)” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko TypeScript Academy-kurssin, päivitä CoddyKit PROhon. TypeScript Academy-kurssilla on yhteensä 2 oppituntia.

Mitä opin oppitunnilla ”Ajon aikainen validointi zodilla (johdanto)”?

Validoikaa JSON-vastaukset ajon aikana zod-skeemoilla, jotta turvallisuus ei perustu ainoastaan käännösaikaisiin tyyppeihin. Harjoittelet TypeScript Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni TypeScript Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin TypeScript Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/2.

Kuinka kauan ”Ajon aikainen validointi zodilla (johdanto)”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä TypeScript Academy-oppitunnilla?

Kyllä. Jokainen TypeScript Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Fetch API -tyypit ja Response.json()-geneerisyys
  2. Ajon aikainen validointi zodilla (johdanto)
← Takaisin: TypeScript Academy