Javascript app.patch()不起作用。get和delete起作用,但patch不起作用。是否存在任何编码错误?我做错了什么?

Javascript app.patch()不起作用。get和delete起作用,但patch不起作用。是否存在任何编码错误?我做错了什么?,javascript,node.js,api,express,patch,Javascript,Node.js,Api,Express,Patch,我想创建一个可以执行CRUD的服务器 电影模型只有一个名为title的属性 我可以创建新电影、删除电影和按电影id搜索电影,但更新不起作用。因此,我在下面显示了代码 1.获取和删除我已在邮递员身上测试并正常工作 [正如我所说,get正在发挥作用][1] 2.补丁请求不起作用 它甚至没有给出任何响应,只是加载 localhost:3000/movies/id\u of\u movie 这里的电影id是要更新的电影id 您的express代码看起来不错,可能是您的mongoose查询遇到了您当前未处

我想创建一个可以执行CRUD的服务器

电影模型只有一个名为title的属性

我可以创建新电影、删除电影和按电影id搜索电影,但更新不起作用。因此,我在下面显示了代码

1.获取和删除我已在邮递员身上测试并正常工作

[正如我所说,get正在发挥作用][1]

2.补丁请求不起作用

它甚至没有给出任何响应,只是加载

localhost:3000/movies/id\u of\u movie

这里的电影id是要更新的电影id


您的express代码看起来不错,可能是您的mongoose查询遇到了您当前未处理的错误。节点将遇到一个未处理的PromiserRejection,请求将永远挂起。在承诺中添加捕获处理程序并处理错误,例如:

app.patch('/movies/:id',(req,res)=>{
    console.log(req.body);
    Movie.findByIdAndUpdate({
        _id:req.params.id
    },{
        $set:req.body
    }).then(()=>{
        res.sendStatus({message:"success"});
    }).catch(err => {
       res.status(500).send(err.message);
    })
});

@OP:对此有什么反馈吗?你找到什么解决方案了吗?
app.patch('/movies/:id',(req,res)=>{
    console.log(req.body);
    Movie.findByIdAndUpdate({
        _id:req.params.id
    },{
        $set:req.body
    }).then(()=>{
        res.sendStatus({message:"success"});
    }).catch(err => {
       res.status(500).send(err.message);
    })
});