我想用NodeJs和Express(我是一个非常初学者编程)构建REST API,CRUD请求在Postman中工作正常,但现在我不知道如何通过表单发送DELETE请求与AJAX。我只想插入一个id文本输入并将其提交给服务器以删除MongoDB中的文档。我到处搜索,但我无法理解如何执行此操作。如何使用Node/Express和AJAX发送表单删除请求?
App.js
app.delete('/delete/:id', (req, res) => {
let id = req.params.id;
if (!ObjectID.isValid(id)) {
return res.status(400).send();
}
Blog.findByIdAndRemove(id).then((docs) => {
res.status(200).send({docs})
}).catch((e) => {
res.status(400)
});
});
HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Titolo</title>
</head>
<body>
<form action='/delete/:id' method="POST">
<input id="id" type="text" name="id" /><br />
<button id:"cancella" type="submit">Submit</button>
</form>
<script src="/js/jquery.js"></script>
<script src="/js/script.js"></script>
</body>
</html>
的script.js
$(document).ready(function() {
$('#cancella').on("click", function() {
var id = $('#id').val();
$.ajax({
url: '/delete/:id',
type: 'DELETE',
data: {"id": id},
dataType: 'json',
success: function(data) {
//do something
}});
});
});
您的表单有一个POST方法,我不确定HTML表单是否支持DELETE方法。 – TGrif