@reinmaker1990

Как обработать POST запрос в Node?

Клиент стучит на сервер и отдает ему объект:

async function postData() {
  try {
    let res = await fetch("http://localhost:3000/data", {
      method: "POST",
      mode: "cors",
      body: JSON.stringify({
        name: "Vasya",
        age: 10,
        status: true,
      }),
      headers: { "Content-type": "application/json" },
    });
    console.log(res);
    let data = await res.json();
    console.log(data);
  } catch (error) {
    console.error(error);
  }
}

На сервере его получаю и обрабатываю тут:

app.post("/data", async (request, response) => {
  try {
    let user = new Data({
      name: request.body.name,
      age: request.body.age,
      status: request.body.status,
    });
    await user.save();
    response.redirect("/main-page");
  } catch (error) {
    throw error;
  }
});

Нужно ли делать дополнительные проверки вообще при post запросе? - что-то типа такого:

req.method === "POST"? /*делаем что-то*/ : /*обрабатываем ошибку*/

Вообще нужно ли это или в данном случае конструкции try-catch для всего этого достаточно?
Все это для того, чтобы если данные, полученные из боди запроса, не соответствуют схеме, выкинуть ошибку, если все хорошо, отправить в БД.
  • Вопрос задан
  • 60 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы