Как обрабатывать ошибки, создаваемые couchbase SDK?
У меня есть приложение NodeJS, которое подключается к couchbase и использует его sdk("couchbase": "^2.0.8") для подключения и выполнения запросов. В некоторых случаях код SDK выдает ошибку, подобную этой:
Bucket.prototype.getMulti = function(keys, callback) {
if (!Array.isArray(keys) || keys.length === 0) {
throw new TypeError('First argument needs to be an array of length > 0.');
}
if (typeof callback !== 'function') {
throw new TypeError('Second argument needs to be a callback.');
}
.
.
.
};
и вот как я это называю:
try {
bucket.getMulti(keys, function(err, result) {
if(err){
console.log(err);
}
.
.
.
}
} catch (error) {
console.log(error);
}
Поскольку ошибка не отправляется в обратном вызове, поэтому нет способа проверить и ответить клиенту соответствующим образом, это просто сбой приложения. Я могу сделать эти проверки перед вызовом этой конкретной функции, но есть много других функций, подобных этим, которые выдают ошибки, каков наилучший способ их обработать и ответить клиенту вместо сбоя приложения?