Junior
94
questionbank

Как работает редирект в HTTP?

Получайте ответы на вопросы в реальном времени с Sobes Copilot
Ответ от нейросети sobes.tech

Редирект в HTTP — это механизм перенаправления клиента (браузера) с одного URL на другой.

Работает это следующим образом:

  1. Клиент отправляет HTTP-запрос на исходный URL.
  2. Сервер получает запрос и вместо отправки страницы для исходного URL, отправляет HTTP-ответ с одним из статус-кодов перенаправления (например, 301 - постоянное, 302 - временное).
  3. В этом ответе сервер также включает заголовок Location с новым URL, на который нужно перенаправить клиента.
  4. Браузер, получив ответ со статус-кодом перенаправления и заголовком Location, автоматически отправляет новый HTTP-запрос уже на URL, указанный в заголовке Location.

Примеры статус-кодов редиректа:

Статус-кодОписание
301Moved Permanently (Постоянно перемещен)
302Found (Временно найден)
303See Other (Смотри другое)
307Temporary Redirect (Временное перенаправление)
308Permanent Redirect (Постоянное перенаправление)

Пример HTTP-ответа с редиректом:

http

В Node.js редирект обычно реализуется через установку соответствующего статус-кода и заголовка Location в объекте ответа res.

Пример реализации в Express.js:

javascript

Пример реализации на чистом Node.js:

javascript