2

私はnode-mongodb-native自分のアプリケーションで使用しています。各ドキュメントを保存/更新するために nodejs サーバーに複数のPOSTリクエストを送信しますが、1 つのドキュメントのみが更新され、他のすべてのドキュメントは変更されません。サーバーで受信したデータは正しいです。

save : function(req,res) {
        data = req.body;            
        if(!data._id){  
            data._id = new ObjectID();
        }else{
            data._id = ObjectID(data._id);          
        }       
        mColl(req.params.collname, function (collection,db) {
            collection.save(data, {safe:true}, function(err, result) {                  
                 if(err){
                    res.send(err);
                 }
                 else {
                    res.send(result);
                 }              
            });
        });
    }

リクエストに対するレスポンスも得られません。

4

1 に答える 1

4

手始めに、これをしないでください:

data = req.body;

新しいリクエストが来ると、(グローバル!)data変数が上書きされ、あらゆる種類の未定義のことが発生する可能性があります。したがって、常に新しい変数を宣言します。

var data = req.body;
于 2013-11-06T06:46:23.070 に答える