我目前正在尝试将来自MongoDB的数据绘制成图表,以便在网站上显示。到目前为止,我所尝试的是使用Node.js和mongoose从MongoDB获得响应,它将一个json对象返回给浏览器。
app.get('/pricediff',function(req,res){
PriceDifference_collection.find({},{'_id':0},function(err,pricediff) {
res.send(pricediff);
})
});
我分别使用amcharts和javascript绘制JSON对象。但现在我只是手动将从Node.js获得的JSON响应粘贴到javascript文件中。
"dataProvider": {JSON data}
我的问题是:有没有办法将Node.js(JSON)的响应直接发送给javascript文件?或者,是否有更简单的方法来绘制我的数据库中的数据?甚至可以使用一种完全不同的数据库。
发布于 2014-11-10 20:10:13
我假设你运行的是"express“或者一个变种的子类。无论哪种方式,你的基本代码都是:
res.json({ "dataProvider": pricediff })
或者有可能:
res.send( JSON.stringify( { "dataProvider": pricediff }, undefined, 2 ) );
主要区别在于first选项不会自动将"Content-Type“头变量(假设您还没有发送任何响应)设置为”/json“,它应该是这样的。
发布于 2014-11-10 21:38:59
尝试此操作以将数据写入js文件
var fs=require('fs');
var resultObject=JSON.stringify({ "dataProvider": pricediff },undefined,2);
fs.writeFile('yourJsFile.js',resultObject, function (err) {
if (err) throw err;
console.log('It\'s saved!');
});
https://stackoverflow.com/questions/26843065
复制相似问题