axios DELETE方法给出了404 Not Found错误

时间:2019-09-28 21:07:38

标签: node.js express axios

在我的MERN应用中,用户可以对照片发表评论。注释是我的照片猫鼬模型中的子文档。我想创建一个axios API,该API会删除给定commentId和photoId的注释。

在邮递员中删除评论就可以了。我的axios.post调用也是如此以创建评论。

我怀疑问题出在我的axios.delete呼叫上。请求打到我的catch语句,说找不到该照片,但是当我尝试使用Postman时,该注释可以删除具有相同数据的文件。在ChromeDev工具中,出现404未找到错误。

404 Error

Specific error from catch statement

server/routes/api/photos.js

// DELETE COMMENT (protected)

router.delete(
  "/comment/delete",
  passport.authenticate("jwt", { session: false }),
  (req, res) => {
    let { commentId, photoId } = req.body;
    Photo.findOne({ _id: photoId })
      .then(photo => {
        photo.comments.pull({ _id: commentId });
        photo.save();
        res.json(photo.comments);
      })
      .catch(err => res.status(404).json({ nophotofound: "No photo found" }));
  }
);
frontend/src/util/photo_api_util.js

import axios from "axios";

export const deletePhotoComment = data => {
  return axios.delete("/api/photos/comment/delete", data);

// ex: data = {photoId: "...", commentId: "..."}
};

0 个答案:

没有答案