2016-07-15 8 views
0

静的なWebサイトへのバックエンドWebサービスとしてWebTaskを使用しているときに問題があります。私はmongodbデータベースに値を挿入するためにWebサービスを使用しています。挿入によってエラーは返されませんが、データベースには何も挿入されません。それは単に応答で働いたと言います。ここでは、関連するコードは次のとおりです。inserts not working mongodb

var MongoClient = require('mongodb').MongoClient; 
    function savePage (page, db, cb){ 
    var doc = { 
    pageSec: page 
    }; 
db.collection("page").insertOne(doc, function (err) { 
    if(err) {return cb(err);} 
    cb('worked'); 
}); 
} 
module.exports = function(context, cb){ 
var section = context.query.section; 
    if(section){ 
    MongoClient.connect(context.data.mongoUri, function(err, db) { 
    if(err) {return cb(err);} 
     savePage(section, db, function (err) { 
     if(err){return cb(err);} 
      cb(null); 
     }); 
    }); 
} 
}; 

は、さらに、これは私がMongoDBのに送られたに私のJSONオブジェクトを構築するとき、私は常に文字列としてプロパティ名を設定し、インサート

"details": { 
"ok": 1, 
"n": 1, 
"lastOp": "6307485423539060737", 
"electionId": "576dec4e2c52240b7a5bca5e" 
}, 
"message": { 
"parsed": true, 
"index": 96, 
"raw": { 
    "type": "Buffer", 
    "data": [ 
    96, 
    0, 
    0, 
    0, 
    163, 
    69, 
    36, 
    3, 
    5, 
    0, 
    0, 
    0, 
    1, 
    0, 
    0, 
    0, 
    8, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    1, 
    0, 
    0, 
    0, 
    60, 
    0, 
    0, 
    0, 
    16, 
    111, 
    107, 
    0, 
    1, 
    0, 
    0, 
    0, 
    16, 
    110, 
    0, 
    1, 
    0, 
    0, 
    0, 
    17, 
    108, 
    97, 
    115, 
    116, 
    79, 
    112, 
    0, 
    1, 
    0, 
    0, 
    0, 
    147, 
    176, 
    136, 
    87, 
    7, 
    101, 
    108, 
    101, 
    99, 
    116, 
    105, 
    111, 
    110, 
    73, 
    100, 
    0, 
    87, 
    109, 
    236, 
    78, 
    44, 
    82, 
    36, 
    11, 
    122, 
    91, 
    202, 
    94, 
    0 
    ] 
}, 
"data": { 
    "type": "Buffer", 
    "data": [ 
    96, 
    0, 
    0, 
    0, 
    163, 
    69, 
    36, 
    3, 
    5, 
    0, 
    0, 
    0, 
    1, 
    0, 
    0, 
    0, 
    8, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    0, 
    1, 
    0, 
    0, 
    0, 
    60, 
    0, 
    0, 
    0, 
    16, 
    111, 
    107, 
    0, 
    1, 
    0, 
    0, 
    0, 
    16, 
    110, 
    0, 
    1, 
    0, 
    0, 
    0, 
    17, 
    108, 
    97, 
    115, 
    116, 
    79, 
    112, 
    0, 
    1, 
    0, 
    0, 
    0, 
    147, 
    176, 
    136, 
    87, 
    7, 
    101, 
    108, 
    101, 
    99, 
    116, 
    105, 
    111, 
    110, 
    73, 
    100, 
    0, 
    87, 
    109, 
    236, 
    78, 
    44, 
    82, 
    36, 
    11, 
    122, 
    91, 
    202, 
    94, 
    0 
    ] 
}, 
"bson": {}, 
"opts": { 
    "promoteLongs": true 
}, 
"length": 96, 
"requestId": 52708771, 
"responseTo": 5, 
"responseFlags": 8, 
"cursorId": "0", 
"startingFrom": 0, 
"numberReturned": 1, 
"documents": [ 
    { 
    "ok": 1, 
    "n": 1, 
    "lastOp": "6307485423539060737", 
    "electionId": "576dec4e2c52240b7a5bca5e" 
    } 
], 
"cursorNotFound": false, 
"queryFailure": false, 
"shardConfigStale": false, 
"awaitCapable": true, 
"promoteLongs": true 
} 

答えて

0

に応じてリターンをMongoDBのものですそれは動作します。

var doc = { 
    "pageSec": page 
    }; 

コードに間違いはありませんので、試してみてください。

+0

お寄せいただきありがとうございます!プロパティ名を文字列に設定することについては考えていませんでした。残念ながら、この問題は依然として続きます。 –

+0

.insert()で試しましたか?オプションを破棄しました... .insertOne()はうまくいくはずです – Daniel

+0

ええ、私も.insert()を使ってみました。残念ながら変更はありません。 –