0Pricing
Sveltejs Academy · Урок

Вспомогательные функции error() и redirect()

Выбрасывайте типизированные ошибки и выполняйте перенаправления из функций загрузки и действий

«Вспомогательные функции error() и redirect()» — бесплатный урок Sveltejs Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Sveltejs Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Sveltejs Academy содержит 4 уроков всего.

Две встроенные вспомогательные функции

error() и redirect() из @sveltejs/kit обрабатывают две основные ветви взаимодействия с пользователем.

Вспомогательная функция ошибки

Вызывает структурированную ошибку со статусом и сообщением.

import { error } from "@sveltejs/kit";
error(404, "Not found");

Вспомогательная функция перенаправления

Перенаправляет пользователя на другой URL со статусом 3xx.

import { redirect } from "@sveltejs/kit";
redirect(303, "/login");

Коды состояния перенаправления

301 — постоянное перенаправление, 302 — временное, 303 — «см. другой ресурс» (часто после POST), 307/308 — с сохранением метода.

Использование при загрузке

Вызывайте её внутри функции загрузки, чтобы перенаправить пользователя до отображения страницы.

if (!session) redirect(303, "/login");

Использование в действиях

Действия формы могут выполнять перенаправление после успешной обработки.

Шаблон с вызовом исключения

Обе вспомогательные функции вызывают исключение, поэтому последующий код недостижим. TypeScript корректно уточняет типы.

Никогда не перехватывайте их

Не заключайте эти вызовы в try/catch — позвольте SvelteKit обработать их.

Статусы 401 и 403

Используйте 401, если пользователь не прошёл аутентификацию, и 403, если он аутентифицирован, но не имеет разрешения.

Объединение с URL

Создавайте адреса с помощью конструктора URL для безопасного кодирования.

redirect(303, `/login?next=${encodeURIComponent(url.pathname)}`);

Практическое применение

Потоки аутентификации, перенаправление устаревших адресов, обработка отсутствующих ресурсов.

Быстрая проверка

Зачем использовать redirect(), а не return?

Итоги

Используйте error() для сбоев, а redirect() — для навигации. Обе функции вызывают исключение и прекращают выполнение последующего кода.

Часто задаваемые вопросы

Урок «Вспомогательные функции error() и redirect()» бесплатный?

Да — полный текст урока «Вспомогательные функции error() и redirect()» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Sveltejs Academy, подпишись на CoddyKit PRO. Курс Sveltejs Academy содержит 4 уроков всего.

Чему я научусь в уроке «Вспомогательные функции error() и redirect()»?

Выбрасывайте типизированные ошибки и выполняйте перенаправления из функций загрузки и действий Ты практикуешь Sveltejs Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Sveltejs Academy?

Предыдущий опыт не требуется. Sveltejs Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Вспомогательные функции error() и redirect()»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Sveltejs Academy?

Да. Каждый урок Sveltejs Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. +error.svelte для пользовательских страниц ошибок
  2. Ожидаемые и неожиданные ошибки
  3. Вспомогательные функции error() и redirect()
  4. Страницы ошибок во вложенных макетах
← Назад к Sveltejs Academy