Как стать автором
Обновить

Комментарии 2

  1. Масштабируемость приложения не определяется интерфейсом сервиса.

    Вас послушать: добавь к постгресу рестфулл интерфейс и он станет легко масштабируемым. Это не так.

  2. Гибкость. Рестфул является в общем случае подходом, который строится поверх вполне конкретных технологий: требование к http-серверу и json формату данных, как самому распространенному - вполне себе конкретные технологии

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

Раз вы добавили 404 статус код, то почему не добавить 200 ?)

app.get('/api/products/:id', (req, res) => {

  const product = getProductById(req.params.id);

  if (!product) {

    res.status(404).json({ error: 'Товар не найден' });

  } else {

    res.json(product);

  }

});

Как-то так.

app.get('/api/products/:id', (req, res) => {

  const product = getProductById(req.params.id);

  if (!product) {
    // Товар не найден (404)
    res.status(404).json({ error: 'Товар не найден' });
  } else if (/* Другое условие */) {
    // Другой статус код (например, 400 - Неверный запрос)
    res.status(400).json({ error: 'Неверный запрос' });
  } else if (/* Другое условие */) {
    // Другой статус код (например, 500 - Внутренняя ошибка сервера)
    res.status(500).json({ error: 'Внутренняя ошибка сервера' });
  } else {
    // Если ни одно из условий не выполнено, вернуть успешный результат
    res.status(200).json(product);
  }

});

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории