对 Node 和 typescript 有点陌生,所以需要一些帮助。 使用node/express/postres作为后端和https://github.com/typeorm/typeorm as orm 具有打开连接的功能,如下所示:
export declare function createConnection(): Promise<Connection>;
所以当我想在我的 route 使用它时,它看起来像这样:
this.app.get("/test", function (req, res) {
createConnection()
.then(conn => {
console.log("Start connection...");
let repo = conn.getRepository(entForum);
let obj = repo.find();
conn.close().catch(err => { });
return obj;
})
.then(data => {
res.send(data);
});
console.log("Done");
});
控制台输出是:
Done
GET /test/ 200 51.053 ms - 1133
Start connection...
问题是我收到“发送后无法设置 header 。”。 看起来响应是在 console.log("DONE"); 之后发送的然后再一次 promise 。 我在这里做错了什么?
最佳答案
好的,发现问题所在了。事实证明,问题出在 promise 之后的这段代码 - console.log("Done");
如果我删除它,一切正常。
关于node.js - Node 路由响应未设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41681697/