如何在 node-postgres 中优雅地处理 "SASL: SCRAM-SERVER-FIRST-MESSAGE ..."?
How to gracefully handle "SASL: SCRAM-SERVER-FIRST-MESSAGE ..." in node-postgres?
我正在使用 Pool
解析 PoolClient
个对象。我知道为什么会出现错误,我只是没有提供密码,但无论如何我都想优雅地处理身份验证错误。
我试过了:
- 在 try-catch
中包装 pool.connect()
- 将
on('error')
添加到 Pool
和 PoolClient
对象。
这是 lib 本身的一个众所周知的问题,不幸的是它一直没有得到解决 - github issue reference
如果您在 express 中使用它,我的建议是使用一个全局错误处理程序,它会捕获所有未处理的异常,它应该会捕获冒出的错误。像这样-
app.use(function (err, req, res, next) {
console.error(err.stack)
return res.status(500).send({err});
});
我正在使用 Pool
解析 PoolClient
个对象。我知道为什么会出现错误,我只是没有提供密码,但无论如何我都想优雅地处理身份验证错误。
我试过了:
- 在 try-catch 中包装
- 将
on('error')
添加到Pool
和PoolClient
对象。
pool.connect()
这是 lib 本身的一个众所周知的问题,不幸的是它一直没有得到解决 - github issue reference
如果您在 express 中使用它,我的建议是使用一个全局错误处理程序,它会捕获所有未处理的异常,它应该会捕获冒出的错误。像这样-
app.use(function (err, req, res, next) {
console.error(err.stack)
return res.status(500).send({err});
});