Node.js / MongoDB中的PUT方法

时间:2015-08-25 05:51:28

标签: node.js mongodb rest put

我在Node.js(MongoDB collection.update)中遇到了一个简单的PUT方法的问题。任何帮助,将不胜感激。此时,我没有收到错误,只是空洞的回复。

index.js:

app.put('/UpdateValues/:collection/:entity', function(req, res) {
   var params = req.params;
   var entity = params.entity;
   var collection = params.collection;

   var value1 = req.body.value1;
   var value2 = req.body.value2;

   if (entity) {
       collectionDriver.updateValues(collection, entity, value1, value2, function(error, objs) {
          if (error) { res.status(400).send(error); }
          else { res.status(200).send(objs); }
       });
   } else {
      res.send(400, {error: 'bad url', url: req.url});
   }
});

collectionDriver.js:

CollectionDriver.prototype.updateValues = function(collectionName, nameDoc, value1new, value2new, callback) { 
    this.getCollection(collectionName, function(error, the_collection) {
        if (error) callback(error);
        else {

            the_collection.update(
               { name: nameDoc },
               { $set: {
                   value1: value1new,
                   value2: value2new
                }},
                function( err, result ) {
                        if ( err ) throw err;
                    }
                );

        }
    });
};

测试:

$ curl -i -X PUT -H'Content-Type:application / json'-d'{“value1”:“1”,“value2”:“1”}'http://localhost/UpdateValues/collection/test

0 个答案:

没有答案