如何在服务器响应请求,从数据库服务器得到响应后,如何响应前端请求?

我正在尝试创建一个纯Node.js HTTP服务器来将我的AngularJS前端连接到Postgres数据库。但是我无法向前端发送有效的响应,因为在我可以从DB服务器响应之前,向前端发送响应。

我的后端服务器代码如下。const http = require('http');

const pg = require('pg');

let menu = [];

const headers = {

'Access-Control-Allow-Origin': '*',

'Access-Control-Allow-Methods': 'OPTIONS, POST, GET',

'Access-Control-Max-Age': 2592000,

'Content-Type':'application/JSON',

};

http.createServer((req, res) =>{

client.connect();

client.query('select * from menu;')

.then(res => {

for(row of res.rows) {

let obj = {

'name': row.name,

'price': row.price,

};

menu.push(obj);

}

console.log(menu);

client.end().then(()=>{console.log("Database disconnected");});

}).catch(e => console.error(e.stack));

console.log(menu);

res.writeHead(200, headers);

res.write(JSON.stringify(menu));

res.end();

}).listen(3500, ()=>{

console.log("BackEnd Server online");

});

控制台日志如下所示。请给我一个可能的解决办法。BackEnd Server online

[]

[

{ name: 'Panner Butter Masala', price: 130 },

{ name: 'Dosa', price: 80 },

{ name: 'Roti', price: 40 },

{ name: 'Pulka', price: 30 },

{ name: 'Sambar vada', price: 70 }

]

Database disconnected

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值