Błędy oczekiwane a nieoczekiwane
Rozróżniaj oczekiwane błędy wyświetlane użytkownikowi od nieoczekiwanych błędów serwera.
Błędy oczekiwane a nieoczekiwane to bezpłatna lekcja Sveltejs Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Sveltejs Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Sveltejs Academy zawiera 4 lekcji w sumie.
Dwie kategorie
SvelteKit rozróżnia błędy oczekiwane (celowo zgłaszane) i nieoczekiwane (wynikające z błędów w kodzie).
Oczekiwane: error()
Wywołaj error(status, message) w znanych przypadkach niepowodzenia.
if (!post) error(404, "Post not found");Nieoczekiwane: nieprzechwycone wyjątki
Każdy inny wyjątek jest nieoczekiwany. Ze względów bezpieczeństwa SvelteKit ukrywa komunikat przed klientami.
Dlaczego ukrywać komunikaty
Komunikaty nieoczekiwanych błędów mogą ujawniać szczegóły stosu lub implementacji. Bezpieczniej jest wyświetlać ogólny komunikat.
handleError
Użyj handleError w hookach, aby rejestrować nieoczekiwane błędy i dostosowywać ogólny komunikat.
Wzorzec: walidowanie danych wejściowych
Wywołuj error(), gdy dane wejściowe są nieprawidłowe, a rzeczywistym błędom pozwól ujawnić się jako nieoczekiwane.
Pomocnik przekierowania
redirect() również służy do celowego sterowania przepływem. Używaj go dla stron wymagających uwierzytelnienia lub przeniesionych adresów URL.
Odzyskiwanie za pomocą try/catch
Ryzykowne wywołania zewnętrzne należy opakować w try/catch i zapewnić łagodne przejście awaryjne, unikając stron błędów.
Typy TypeScript
Funkcja error() SvelteKit ma określony typ i zgłasza wyjątek, więc po logice wczesnego powrotu reszta kodu pozostaje osiągalna.
Wybór kodu statusu
404 oznacza brak zasobu, 401 brak uwierzytelnienia, 403 brak uprawnień, a 500 błąd serwera.
Unikanie zwykłych wyjątków
W ścieżkach widocznych dla użytkownika zwykłe throw new Error jest traktowane jako nieoczekiwane. Użyj error(), aby zapewnić czytelny interfejs.
Szybkie sprawdzenie
Czym error(404) różni się od throw new Error?
Podsumowanie
Używaj error() w przypadku celowych niepowodzeń z komunikatami widocznymi dla użytkownika, a rzeczywistym błędom pozwól się zgłaszać i rejestrować przez handleError.
Ucz się HTML dzięki korepetycjom AI — za darmo
Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.
- Kursy
- 41
- Lekcje
- 163
Często zadawane pytania
Czy lekcja „Błędy oczekiwane a nieoczekiwane” jest bezpłatna?
Tak — pełny tekst „Błędy oczekiwane a nieoczekiwane” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Sveltejs Academy, przejdź na CoddyKit PRO. Kurs Sveltejs Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Błędy oczekiwane a nieoczekiwane”?
Rozróżniaj oczekiwane błędy wyświetlane użytkownikowi od nieoczekiwanych błędów serwera. Ćwiczysz Sveltejs Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Sveltejs Academy?
Nie wymagamy żadnego doświadczenia. Sveltejs Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.
Ile czasu zajmuje lekcja „Błędy oczekiwane a nieoczekiwane”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Sveltejs Academy?
Tak. Każda lekcja Sveltejs Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- +error.svelte dla niestandardowych stron błędów
- Błędy oczekiwane a nieoczekiwane
- Helpery error() i redirect()
- Strony błędów w zagnieżdżonych układach