我试图将一些数据插入到dynamodb中,正如预期的那样,我得到了一个ConditionalCheckFailedException
。所以我试图仅针对那种情况捕获该异常,除此之外我想为所有其他错误抛出服务器错误。但是要添加类型,我无法在aws-sdk中找到ConditionalCheckFailedException
。
这就是我想要做的。
// where to import this from
try {
await AWS.putItem(params).promise()
} catch (e) {
if (e instanceof ConditionalCheckFailedException) { // unable to find this exception type in AWS SDK
throw new Error('create error')
} else {
throw new Error('server error')
}
}
您可以使用以下警卫来检查错误:
if (e.code === 'ConditionalCheckFailedException') {
请注意,instanceof
仅适用于类,而不适用于接口。因此,即使你有类型,如果它是一个接口,你也无法使用它,因为它依赖于某些原型检查。使用err.code
属性更安全。