Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про JavaScript: HTTP status codes, client-server communication, REST API, web development

Какие HTTP-статусы существуют?

Вопрос проверяет знание стандартных HTTP-статусов, их классификацию и понимание, зачем они нужны для корректного взаимодействия клиента и сервера в веб-разработке.

Короткий ответ

HTTP-статусы — это трёхзначные коды, которые сервер отправляет клиенту в ответ на его запрос. Они сгруппированы по первой цифре: 1xx — информационные, 2xx — успех, 3xx — перенаправление, 4xx — ошибка клиента, 5xx — ошибка сервера. Например, 200 OK означает успешное выполнение запроса, 404 Not Found — ресурс не найден, а 500 Internal Server Error — ошибка на стороне сервера. Понимание этих кодов помогает быстро диагностировать проблемы в веб-приложениях и API.

Длинный ответ

HTTP-статусы (или коды состояния) являются неотъемлемой частью протокола HTTP. Они сообщают клиенту (например, браузеру или другому приложению) о результате обработки его запроса сервером. Каждый код состоит из трёх цифр, где первая цифра определяет класс ответа.

Классы HTTP-статусов

  • 1xx (Информационные): Указывают, что запрос получен и обработка продолжается. Пример: 100 Continue.
  • 2xx (Успешные): Запрос успешно обработан. Самый известный — 200 OK.
  • 3xx (Перенаправления): Требуют от клиента выполнить дополнительные действия для завершения запроса, например, перейти по другому адресу (301 Moved Permanently).
  • 4xx (Ошибки клиента): Запрос содержит ошибку или не может быть выполнен. Например, 400 Bad Request (неверный синтаксис) или 404 Not Found (ресурс не найден).
  • 5xx (Ошибки сервера): Сервер не смог обработать корректный запрос. Классический пример — 500 Internal Server Error.

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

В разработке REST API правильное использование статусов критически важно. Оно делает API предсказуемым и удобным для использования. Например, при создании ресурса следует возвращать 201 Created, а при неудачной валидации данных от клиента — 422 Unprocessable Entity или 400 Bad Request.

Вот пример обработки на сервере (Node.js с Express):

app.get('/api/users/:id', (req, res) => {
  const user = findUserById(req.params.id);
  if (!user) {
    // Клиент запросил несуществующий ресурс
    return res.status(404).json({ error: 'User not found' });
  }
  // Успешный ответ с данными
  res.status(200).json(user);
});

app.post('/api/users', (req, res) => {
  const newUser = createUser(req.body);
  if (newUser) {
    // Ресурс успешно создан
    res.status(201).json(newUser);
  } else {
    // Ошибка на стороне сервера при создании
    res.status(500).json({ error: 'Failed to create user' });
  }
});

Вывод: Знание и правильное применение HTTP-статусов необходимо для построения надёжных, отказоустойчивых и понятных для потребителей веб-сервисов и API. Они являются ключевым инструментом для стандартизированной коммуникации между компонентами распределённых систем.

Уровень

  • Рейтинг:

    4

  • Сложность:

    3

Навыки

  • JavaScript

    JavaScript

  • Networks

Ключевые слова

#HTTP status codes

#client-server communication

#REST API

#web development

Подпишись на Java Developer в телеграм