【发布时间】:2018-01-03 07:50:12
【问题描述】:
我正在尝试从 find() 方法中获取数据,以使用 find() 方法之外的数据。我想在 JSON 响应中使用数据。这段代码效果不好。数据未在 find() 方法之外定义。 我如何在响应中使用数据?
var path = '';
var direct = '';
var MongoClient = require('mongodb').MongoClient;
var assert = require('assert');
var url = 'mongodb://localhost:27017/serverad';
MongoClient.connect(url,function(err,db){
assert.equal(err,null);
db.collection("adchar").find(
{ target_gender: 'female' },
{ad_path:1,ad_direct:1, _id:0}).toArray(function(err,docs){
callback(docs);
assert.equal(err,null);
path =docs[0].ad_path;
direct =docs[0].ad_direct;
});
});
exports.get = function(req, res) {
res.writeHead(200 , { 'content-Type':'application/json'})
var myObj = {
AdUrl:path
,dirURL : direct,
};
res.end(JSON.stringify(myObj));
};
【问题讨论】:
-
这是您拥有的完整代码吗?你的
exports.get方法在什么时候被调用? -
不,这不是完整的代码,router.js 文件中的exports.get 方法。
标签: javascript node.js mongodb find response