【发布时间】:2017-04-29 23:39:55
【问题描述】:
我有这段代码,我想发送一个响应,其中包含我通过多次请求数据库获得的数据。我不明白为什么它会发送一个空响应。
var express = require('express'),
router = express.Router(),
database = require('../database');
router.get('/', function(req, res, next){
res.writeHead(200, {"Content-Type": "application/json"});
var ttt;
var yyy;
database.getTagType().then(function(data) {
ttt = "pfff";
});
database.getSpecie().then(function(data) {
yyy = "akkhhh";
});
var json = JSON.stringify({
anObject: ttt,
anArray: yyy,
});
res.end(json);
});
module.exports = router;
【问题讨论】:
-
Promise 是异步的,因此在您为响应创建
json对象时尚未分配ttt和yyy。
标签: javascript json node.js httpresponse