Почему я получаю ошибку при попытке протестировать запрос put в бессоннице?

#javascript #routes #put #insomnia

Вопрос:

Вот код—

 router.put('/:id', (req, res) => {
  // update product data
  Product.update(req.body, {
    where: {
      id: req.params.id,
    },
  })
    .then((product) => {
      // find all associated tags from ProductTag
      return ProductTag.findAll({ where: { product_id: req.params.id } });
    })
    .then((productTags) => {
      // get list of current tag_ids
      const productTagIds = productTags.map(({ tag_id }) => tag_id);
      // create filtered list of new tag_ids
      const newProductTags = req.body.tagIds
        .filter((tag_id) => !productTagIds.includes(tag_id))
        .map((tag_id) => {
          return {
            product_id: req.params.id,
            tag_id,
          };
        });
      // figure out which ones to remove
      const productTagsToRemove = productTags
        .filter(({ tag_id }) => !req.body.tagIds.includes(tag_id))
        .map(({ id }) => id);

      // run both actions
      return Promise.all([
        ProductTag.destroy({ where: { id: productTagsToRemove } }),
        ProductTag.bulkCreate(newProductTags),
      ]);
    })
    .then((updatedProductTags) => res.json(updatedProductTags))
    .catch((err) => {
      // console.log(err);
      res.status(400).json(err);
    });
});
 

введите описание изображения здесь

это объект json, который я пытался использовать

 {
    "id": 1,
    "tag_name": "hat",
    "products": [
        {
            "id": 1,
            "product_name": "Branded Baseball Hat",
            "price": 22.99,
            "stock": 12,
            "category_id": 4,
            "product_tag": {
                "id": 5,
                "product_id": 1,
                "tag_id": 1
            }
        }
    ]
}
 

Я не уверен, совершаю ли я ошибку в бессоннице, когда пытаюсь протестировать, или это в моем реальном коде Visual studio. Все мои другие тесты маршрута работают. (ПОЛУЧИТЬ, УДАЛИТЬ И ОПУБЛИКОВАТЬ)

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

1. Раскомментируйте console.log(err) в своем .catch() заявлении, а затем опубликуйте сообщение об ошибке, которое выводится на консоль узла, было бы очень полезно

2. Вы уверены, что маршрут правильный?

3. Итак, у вас установлен префикс, так как «продукт» не находится в пути put?