尝试使用node.js / express / mongodb。
我正在使用
http://localhost:3000/models/save?model= {" name":" blah blah blah"}
将测试JSON对象传递给express route / models / save以保存到mongodb。除了collection.insert语句之外,一切都很有效,它返回一个" undefined"错误。
我认为必须是var model = req.query.model从查询字符串中提取的参数;格式不正确。有什么想法吗?
代码如下:
var express = require('express');
var router = express.Router();
router.get('/save', function(req, res) {
// Set our internal DB variable
var db = req.db;
var model = req.query.model;
console.log (model);
// Set our collection
var collection = db.get('models');
// Submit to the DB
collection.insert ( model, function (err, doc) {
if (err) {
// If it failed, return error
res.send("There was a problem saving to the database.");
console.log(doc);
}
else {
console.log ("model saved");
res.send("OK")
}
});
});
module.exports = router;
答案 0 :(得分:0)
请尝试以下方法:
var model = JSON.parse(req.query.model);
而不是
行var model = req.query.model;
JSON.parse
方法解析JSON字符串表示(在您的情况下是model
请求查询参数)并返回Javascript对象,然后您可以在插入过程中使用它。
我希望它有所帮助。