Korzystanie ze sprawdzonych danych
Część sekcji API REST ścieżki Node.js w Coddy. Lekcja 8 z 25.
Schemat może zwrócić sprawdzone dane albo informacje o problemie. safeParse zwraca obiekt, którego pole success informuje, co się wydarzyło. W przypadku powodzenia pole data zawiera sprawdzoną wartość.
const result = Book.safeParse(body);
if (result.success) {
return result.data;
}
return {error: 'Invalid book'};Reguły mogą przekształcać wartości, a także je odrzucać. z.string().trim() usuwa otaczające spacje. Zapisz sprawdzone dane, aby zachować tę zmianę. Zapisanie oryginalnego obiektu body przywróciłoby niechciane spacje. Podany schemat ma już swoje reguły.
trim() usuwa otaczające spacje. Następujące po nim min(1) wymaga co najmniej jednego znaku, więc tytuł zawierający wyłącznie spacje nie przejdzie sprawdzania.
Wyzwanie
ŁatwyTo niewielki projekt do ćwiczeń. Konfiguracja jest już przygotowana; edytuj tylko exercise.js.
Użyj dostarczonego schematu Task. W razie powodzenia zwróć {"ok":true,"title":...} z tytułem bez początkowych i końcowych białych znaków albo {"ok":false} w razie niepowodzenia. Wysłanie {"title":" Read "} metodą POST na adres /result zwraca {"ok":true,"title":"Read"}. Wartość 42 jako tytuł zwraca {"ok":false}.
Wypróbuj też {"title":" "}: musi zwrócić {"ok":false}.
Początkowe żądanie GET /result używa dostarczonego przykładu {"title": " Read "}. Aby wypróbować inne dane wejściowe, użyj POST /result z treścią żądania w formacie JSON.
Spróbuj swoich sił
import { z } from 'zod';
const Task = z.object({ title: z.string().trim().min(1) });
export function exercise(body) {
return { ok: true, title: body.title };
}
Wszystkie lekcje w sekcji API REST
1Zasoby i czasowniki
Zasoby i URL-eTworzenie za pomocą POST4Przeglądarki, wersje i konfiguracja
Czym jest originZezwalanie na dostęp z innego originCORSStrona wywołująca API2Walidacja i błędy
Walidacja danych wejściowychPoćwicz samodzielnie: Edytor online Express