В моем приложении MERN пользователи могут комментировать фотографии.Комментарии - это поддокументы в моей фото-модели Mongoose.Я хочу создать Axios API, который удаляет комментарий с учетом commentId и photoId.
Удаление комментария прекрасно работает в Postman.Так же как и мой axios.post для создания комментария.
Я подозреваю, что проблема связана с моим вызовом axios.delete.Запрос соответствует моему заявлению о том, что фотография не найдена, но комментарий удаляется с теми же данными, что и я, когда я пытаюсь почтальона.В инструментах ChromeDev я получаю ошибку 404. Не найдено.
404 Ошибка
Конкретная ошибка из оператора catch
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: "..."}
};