【发布时间】:2019-03-05 05:41:27
【问题描述】:
当我尝试使用 node.js 通过表单从数据库中删除数据并表示它不会删除任何数据时。据我所知,只有两种方法获取和发布。没有删除方法。
router.js 代码
router.delete('api/:id', (req, res, next) => {
const id = req.params.id;
pool.query(`delete from book WHERE id = ?`, id, (err, result) => {
if (err) throw err;
res.status(201).json({ msg: `Deleted`});
});
});
表格代码:
<form action="/api" method="">
<input type="number" name="id" placeholder="delete" /><br/>
</form>
这里的方法应该是什么?我试图给 post 和 get 但徒劳无功。
【问题讨论】:
-
HTML 表单方法默认为 GET。另外,尽管您是如何编写路由的,但您还是在正文中而不是在 URL 中发送 id。所以你在做什么,而不是
DELETE /api/id是GET /api。 -
@MadWard 那么我如何通过 url 发送 id 呢?
-
@RomonaMK 使用 POST 并访问
req.body.id,或使用 AJAX 发送自定义 DELETE 路由。 -
请查看以下链接以获取解决方案 - stackoverflow.com/questions/9859287/…
标签: javascript html node.js express