2015-12-30 30 views
0

我正在使用pg-promise进行一个项目。我尝试过使用pg-promise查询几种不同的方式,但它们似乎都导致它在6次查询后挂起。pg-promise在六次查询后挂起

在我看来,连接并未关闭,但在查询后关闭连接的文档中找不到任何内容。

这里就是我有

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;  
}); 
} 

我使用一个共享的连接对象也试过,但使用任务推荐的文档。有人知道这里发生了什么吗?

+0

您的代码没有显示任何错误。但是你不显示你如何使用函数'query',或者你如何使用'options'来初始化pg-promise?并且您应该检查是否有任何错误报告,并在此处提供详细信息。底线,没有人用pg-promise报告过这样的问题,所以对于你遇到的这个问题必须有一个独特的一面,而你只需要提供更多的细节。 –

+1

感谢您的评论,我真的明白了。事实证明,这实际上是因为我没有返回浏览器的响应。我对node/express很新,并没有意识到它们不会像apache/php那样自动返回。它确实工作得很好。 – Anthony

回答

0

我不确定这会对未来的任何人有所帮助。但我的问题是不向浏览器返回请求。

我达到了最大的连接数,并且没有任何对浏览器的响应使它看起来像挂在我身上。我没有意识到请求是node/express不会像php/apache那样自动返回。