javascript - 在 Express.js 中使用 PUT 方法

标签 javascript node.js http express

我正在尝试为 Express.js 应用程序实现更新功能,并且我想使用 PUT 请求来发送新数据,但使用 PUT 时我不断收到错误消息。从我读过的所有内容来看,这只是使用 app.put 的问题,但这不起作用。我的路线文件中有以下内容:

send = function(req, res) { 
    req.send(res.locals.content);
};

app.put('/api/:company', function(res,req) {
    res.send('this is an update');
}, send);

当我使用 postman 发出 PUT 请求时,我收到“无法 PUT/api/petshop”作为错误消息。我不明白为什么我不能 PUT,或者出了什么问题。

最佳答案

您可能缺少实际的更新功能。当您告诉数据库更新数据时,您有将结果返回给客户端的放置路径。

如果你使用 MongoDB 和 ExpressJS,你可以这样写:

app.put('/api/:company', function (req, res) {
    var company = req.company;
    company = _.extend(company, req.body);
    company.save(function(err) {
    if (err) {
        return res.send('/company', {
            errors: err.errors,
            company: company
        });
    } else {
        res.jsonp(company);
    }   
  })
});

这个 mean stack project可能会对您有所帮助,因为它涵盖了我刚刚在这里使用的为您的公司交换他们的文章的 CRUD 功能。一样的。

关于javascript - 在 Express.js 中使用 PUT 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18601922/

相关文章:

javascript - 有谁知道 javascript 中的下拉菜单插件?

node.js - 如何使用 node-cron 立即启 Action 业

regex - Express.js : how to make app. 在 req.param 中得到 ('/[:userId]i' ..)?

http - OneDrive 巨大的流式上传

HTTP Range 请求 multipart/byteranges - 最后有 CRLF 吗?

javascript - Codeigniter:每当尝试编辑配置文件时,下拉列表都会将空值传递到数据库

javascript - 从 jquery-wordpress 中的选择器获取文本

javascript - 按字母顺序对数组进行排序,将数字和特殊字符保留在末尾

javascript - 从 C++ 填充 Node v8 Float32Array

http - GAE Go http 发布链接