【发布时间】:2016-04-03 23:20:08
【问题描述】:
我正在使用 pg-promise 开发一个项目。我尝试使用 pg-promise 查询几种不同的方式,但它们似乎都导致它在 6 次查询后挂起。
在我看来,连接并没有被关闭,但我在文档中找不到关于在查询后关闭连接的任何内容。
这就是我所拥有的
var cn = {
host: 'localhost',
port: 5432,
database: 'db',
user: 'user',
password: 'password'
};
var db = pgp(cn);
function query(sql, params) {
return db.task(function (t) {
// this = t = task protocol context;
// this.ctx = task config + state context;
return t.query(sql, params);
})
.then(function (events) {
// success;
console.log(events);
})
.catch(function (error) {
// error;
});
}
我也尝试使用共享连接,对象,但文档建议使用任务。有谁知道这里发生了什么?
【问题讨论】:
-
您的代码没有显示任何错误。但是你没有展示你如何使用函数
query,或者你如何初始化pg-promise - 用什么options?并且您应该检查报告了哪些错误(如果有),并在此处提供详细信息。归根结底,没有人报告过这样的 pg-promise 问题,所以你遇到的这个问题一定有其独特的一面,你只需要提供更多细节。 -
感谢您的评论,我真的想通了。事实证明这实际上是因为我没有向浏览器返回响应。我对 node/express 很陌生,没有意识到它们不会像 apache/php 那样自动返回。它确实工作得很好。
标签: pg-promise