Node.js 快速删除 href 路由不起作用
Node.js express delete href routing doesn't work
我的删除路径有问题。它无法从 index.js
获取 /delete/{{id}} 路由
我已经阅读了 express 文档,我必须编写与文档相同的代码,但它仍然不起作用
input.hbs
<main>
<div class="container">
<h1>Hasil Input</h1>
<table class="table">
<thead>
<tr>
<th>Nama</th>
<th>NIM</th>
<th>Action</th>
</tr>
</thead>
<tbody>
{{#each data}}
<tr>
<td>{{name}}</td>
<td>{{nim}}</td>
<td>
<a href="delete/{{key}}" class="btn btn-danger">Delete</a>
</td>
</tr>
{{/each}}
</tbody>
</table>
</div>
</main>
index.js
app.post('/delete/(:id)', (req,res,next) => {
id = req.params.id;
ref = database.ref('Person/'+id );
ref.remove()
res.redirect('/input')
})
它仍然显示这样的消息
Cannot GET /delete/-LbdQOw7xbv_Vrp0OD-u
您可以使用删除方法来做到这一点,
这是一个简单的例子。
假设有一个成员class。
在服务器端:
router.delete('url/:id',(req,res) => {
const found = members.some(member => member.id === parseInt(req.params.id));
if(found){
// Do something
res.json( { msg: "member deleted",members: members.filter( member => member.id !== parseInt(req.params.id))});
}
else{
res.status(400).json( { msg: `No member with the id of ${req.params.id}`})
}
});
在客户端,
你可以使用 Ajax
$.ajax({
url: 'url/id',
type: 'DELETE',
success: function(result) {
// Do something
}
});
我的删除路径有问题。它无法从 index.js
获取 /delete/{{id}} 路由我已经阅读了 express 文档,我必须编写与文档相同的代码,但它仍然不起作用
input.hbs
<main>
<div class="container">
<h1>Hasil Input</h1>
<table class="table">
<thead>
<tr>
<th>Nama</th>
<th>NIM</th>
<th>Action</th>
</tr>
</thead>
<tbody>
{{#each data}}
<tr>
<td>{{name}}</td>
<td>{{nim}}</td>
<td>
<a href="delete/{{key}}" class="btn btn-danger">Delete</a>
</td>
</tr>
{{/each}}
</tbody>
</table>
</div>
</main>
index.js
app.post('/delete/(:id)', (req,res,next) => {
id = req.params.id;
ref = database.ref('Person/'+id );
ref.remove()
res.redirect('/input')
})
它仍然显示这样的消息
Cannot GET /delete/-LbdQOw7xbv_Vrp0OD-u
您可以使用删除方法来做到这一点, 这是一个简单的例子。
假设有一个成员class。
在服务器端:
router.delete('url/:id',(req,res) => {
const found = members.some(member => member.id === parseInt(req.params.id));
if(found){
// Do something
res.json( { msg: "member deleted",members: members.filter( member => member.id !== parseInt(req.params.id))});
}
else{
res.status(400).json( { msg: `No member with the id of ${req.params.id}`})
}
});
在客户端, 你可以使用 Ajax
$.ajax({
url: 'url/id',
type: 'DELETE',
success: function(result) {
// Do something
}
});