我正在编写一个 Node.js 应用程序,并且在它的一个代码块内可能会引发各种异常(通过我调用的第 3 方代码)。现在我想对这些异常做出反应,因此我这样做:
try {
// Call 3rd party code
} catch (e) {
// Handle e
}
基本上,这很好用,但是......我在不同的异常之间有什么区别?
不幸的是,它们都具有Error
构造函数,因此这不是可行的方法。我可能会使用该message
属性,但这当然不是最好的方式(因为我依赖于消息永远不会改变的事实,即 - 恕我直言 - 比构造函数更改的可能性更大)。
有任何想法吗?
PS:具体来说 - 我需要在尝试执行tls.connect
. 如何检测到这是 SSL 错误?