首页 > 解决方案 > 无法删除帖子(快递猫鼬邮递员)

问题描述

我正在尝试使用 Postman 请求进行简单的 REST 操作, http://localhost:5000/posts/60c9b65463cdb804e4238257但使用 DELETE 我收到此错误:

404 not found Cannot DELETE /posts/60c8e5a860b84f0013a1d9d7

我会很高兴任何提示。

https://i.stack.imgur.com/PL9P8.jpg

// index.js

app.use(express.json());
app.use(cors());

app.use("/posts", postRoutes);

//routes.js

const routes = express.Router();

routes.get("/", getPosts);
routes.post("/", createPost);
routes.patch("/:id", updatePost);
router.delete("/:id", deletePost);
export default routes;

// controller.js

export const deletePost = async (req, res) => {
  const { id } = req.params;

  if (!mongoose.Types.ObjectId.isValid(id))
    return res.status(404).send(`No post with id: ${id}`);

  try {
    await Bootcamp.findByIdAndDelete(id);

    res.json({ message: "Post deleted successfully.",success:true });
  } catch (error) {
    res.status(500).json({ success: flase, message: error.message });
  }
};

export default router;

标签: node.jsexpresspostman

解决方案


您在delete路由器线路中错过了一个“s”。


const routes = express.Router();

routes.get("/", getPosts);
routes.post("/", createPost);
routes.patch("/:id", updatePost);
router.delete("/:id", deletePost); // maybe it should be "routes"
export default routes;

-> routes.delete("/:id", deletePost);


推荐阅读