通过Href的findByIdAndRemove给了我404

时间:2019-06-05 16:24:15

标签: javascript mongodb mongoose

我删除对象的链接给我404,当我单击链接时,它转到localhost:3000 / account / 5cf3ea30a19df73f449e72f2 / delete,但只是给了我404,但是在邮递员中,当我输入网址完全相同,效果很好。


exports.deleteAccount = (req, res) => {

    Accounts.findByIdAndRemove(req.params.id, (err) => {
        if (err) return next(err);
        res.send('Deleted successfully!');
    });
};
const express = require('express');
const router = express.Router();
const accountController = require('../controllers/accounts-controller')

router.post('/add', accountController.addAccount);
router.delete('/:id/delete', accountController.deleteAccount);

module.exports = router;
a(href="/account/5cf3ea30a19df73f449e72f2/delete") Delete

1 个答案:

答案 0 :(得分:1)

您的代码运行正常。

在网络浏览器中键入URL时,它总是发送GET请求以“获取”页面。当您在浏览器中输入http://localhost:3000/account/5cf3ea30a19df73f449e72f2/delete时,您正在尝试“获取”该资源。由于您仅指定/:id/delete路由来匹配包含DELETE标头的请求,因此您得到的是404。

要了解有关HTTP请求方法及其含义的更多信息,请查看mozilla developer network

上的文档