1

我有一个 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);
}

由于错误未在回调中发送,因此无法检查并适当地响应客户端,它只是使应用程序崩溃。我可以在调用此特定函数之前进行这些检查,但是还有许多其他类似的函数会引发错误,处理它们并响应客户端而不是使应用程序崩溃的最佳方法是什么?

4

0 回答 0