我想在 nodejs 应用程序中找到所有用户并显示它们。
应用程序.js
var express = require('express');
var hbs = require('hbs');
var app = express();
var user = require('./user');
app.set('view engine', 'html');
app.engine('html', hbs.__express);
app.use(express.static('public'));
app.use(express.bodyParser());
app.get('/', function(req, res) {
res.render('user/index', {
title: "User overview",
users: user.all()
}
);
});
用户.js
var http = require('http');
var options = {
host: 'localhost',
port: 5984,
path: '/user/_all_docs?include_docs=true',
headers : {
'accept': 'application/json'
}
};
exports.all = function() {
// Store them ?
var entries = [];
var db_req = http.request(options, function(db_res) {
db_res.setEncoding('utf8');
db_res.on('data', function(data){
entries.push(data);
});
});
db_req.end();
// Return entries somehow?
}
我了解 nodejs 正在执行并行请求,因此无法简单地返回条目列表。但是我需要使用什么函数或回调db_req.end()
来确保entries
不是空列表?