Menu
CoddyTech

Menggunakan data yang diperiksa

Termasuk bagian REST API dalam perjalanan Node.js di Coddy. Pelajaran 8 dari 25.

Skema dapat mengembalikan data yang sudah diperiksa atau informasi tentang masalah. safeParse mengembalikan object yang field success-nya memberi tahu kamu hasilnya. Jika berhasil, data menyimpan nilai yang sudah diperiksa.

const result = Book.safeParse(body);
if (result.success) {
    return result.data;
}
return {error: 'Invalid book'};

Aturan dapat mengubah nilai sekaligus menolaknya. z.string().trim() menghapus spasi di sekelilingnya. Simpan data yang sudah diperiksa agar perubahan itu tetap ada. Menyimpan body asli akan mengembalikan spasi yang tidak diinginkan. Skema yang diberikan sudah memiliki aturannya.

trim() menghapus spasi di sekelilingnya. min(1) berikutnya mensyaratkan setidaknya satu karakter, jadi judul yang hanya berisi spasi akan gagal.

challenge icon

Tantangan

Mudah

Ini adalah proyek latihan kecil. Penyiapannya sudah disediakan, edit hanya exercise.js.

Gunakan skema Task yang disediakan. Kembalikan {"ok":true,"title":...} dengan judul yang sudah dipangkas jika berhasil, atau {"ok":false} jika gagal. POST {"title":" Read "} ke /result menghasilkan {"ok":true,"title":"Read"}. Judul bernilai 42 menghasilkan {"ok":false}.

Coba juga {"title":" "}: hasilnya harus {"ok":false}.

GET /result awal menggunakan contoh yang disediakan {"title": " Read "}. Gunakan POST /result dengan isi JSON untuk mencoba input lain.

Coba sendiri

import { z } from 'zod';
const Task = z.object({ title: z.string().trim().min(1) });
export function exercise(body) {
    return { ok: true, title: body.title };
}

Semua pelajaran di REST API

Latihan sendiri: Playground Express