Hjelpefunksjonene error() og redirect()
Kast typede feil og omdirigeringer fra load-funksjoner og actions.
Hjelpefunksjonene error() og redirect() er en gratis leksjon i Sveltejs Academy på CoddyKit. Dette er leksjon 3 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Sveltejs Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Sveltejs Academy inneholder totalt 4 leksjoner.
To innebygde hjelpefunksjoner
error() og redirect() fra @sveltejs/kit håndterer de to viktigste brukerrettede kontrollflytene.
error-hjelper
Kaster en strukturert feil med status og melding.
import { error } from "@sveltejs/kit";
error(404, "Not found");redirect-hjelper
Sender brukeren til en annen URL med en 3xx-status.
import { redirect } from "@sveltejs/kit";
redirect(303, "/login");Statuskoder for redirect
301 for permanent, 302 for midlertidig, 303 for «see other» (vanlig etter POST), 307/308 for statuskoder som bevarer metoden.
Bruk i load
Kall den i load for å omdirigere før gjengivelse.
if (!session) redirect(303, "/login");Bruk i actions
Skjemahandlinger kan omdirigere etter vellykket behandling.
Kastemønster
Begge hjelpefunksjonene kaster en feil, så etterfølgende kode er utilgjengelig. TypeScript snevrer inn typene korrekt.
Aldri fang dem opp
Ikke pakk disse inn i try/catch. La SvelteKit håndtere dem.
Status 401 mot 403
Bruk 401 når brukeren ikke er autentisert, og 403 når brukeren er autentisert, men ikke har tilgang.
Kombiner med URL-er
Bygg URL-er med URL-konstruktøren for trygg koding.
redirect(303, `/login?next=${encodeURIComponent(url.pathname)}`);Praktisk bruk
Autentiseringsflyter, omdirigering av foreldede URL-er og håndtering av manglende ressurser.
Kort kontroll
Hvorfor bruke redirect() i stedet for return?
Oppsummering
Bruk error() for feil og redirect() for navigering. Begge kaster en feil og stopper videre kode.
Lær deg HTML med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 41
- Leksjoner
- 163
Ofte stilte spørsmål
Er leksjonen «Hjelpefunksjonene error() og redirect()» gratis?
Ja – hele teksten i «Hjelpefunksjonene error() og redirect()» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Sveltejs Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Sveltejs Academy inneholder totalt 4 leksjoner.
Hva lærer jeg i «Hjelpefunksjonene error() og redirect()»?
Kast typede feil og omdirigeringer fra load-funksjoner og actions. Du øver på Sveltejs Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Sveltejs Academy?
Ingen tidligere erfaring er nødvendig. Sveltejs Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 3 av 4.
Hvor lang tid tar leksjonen «Hjelpefunksjonene error() og redirect()»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Sveltejs Academy-leksjonen?
Ja. Alle Sveltejs Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- +error.svelte for egendefinerte feilsider
- Forventede og uventede feil
- Hjelpefunksjonene error() og redirect()
- Feilsider i nestede layouts