2016-07-15 61 views
0

我在使用webtask作爲靜態網站的後端Web服務時遇到問題。我正在使用Web服務將值插入到mongodb數據庫中。插入沒有返回任何錯誤,但沒有插入到數據庫中。它只是說響應「有效」。下面是相關的代碼: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的回報響應插入

"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

當我建立我的JSON對象發送到MongoDB中,我總是設置屬性名作爲字符串它的工作原理。

var doc = { 
    "pageSec": page 
    }; 

我看不出你的代碼有什麼問題,所以你可以試試這個。

+0

感謝您的建議!我沒有想過將屬性名稱設置爲字符串。不幸的是,這個問題依然存在。 –

+0

您是否嘗試使用.insert()?來放棄選項...雖然.insertOne()應該可以工作 – Daniel

+0

是的,我也嘗試使用.insert()。很遺憾沒有變化。 –