2 jerryliun jerryliun 于 2017.08.31 09:25 提问

项目中加入Sequoiadb的驱动后,在驱动的index.js里有如下语句报了错怎么办?

1、项目中加入Sequoiadb的驱动后,在驱动的index.js里有如下语句报了错:

exports.Client = require('./client');

2、我在连接我的sequoiadb的时候,因为服务器未启动,所以因为超时报错了,这个错怎么处理。

1个回答

SequoiaDB_Official
SequoiaDB_Official   2017.08.31 09:29
已采纳

1,是原驱动的Index.js里的代码错了,语句少了lib/,应该是如下的才对:
exports.Client = require('./lib/client');
复制代码

2,服务不可用时连接错误未能处理,是因为Pool没有把这个错向Client抛出。在Pool的Init方法里,new Connection的下面,先将错抛出:

...
conn.on('error', error);
...
添加error方法处理错误:
var error=function(err){
if(err){
that.emit('error', err);
return;
}
}
...
复制代码

然后在Client.js就可以捕获这个错了:
this.pool.on('error', (error)=>{
return reject(error);
});

Csdn user default icon
上传中...
上传图片
插入图片