如何救援Aws :: AwsError:NoSuchKey

Nar*_*tor 3 ruby error-handling amazon-s3

我一直在努力解决这个问题 -

def aws_file_exists? filename
 begin
   @s3_interface.get('bucket', filename)
   return true
 catch Aws::AwsError, Aws::AwsError2, NoSuchKey, RuntimeError, AmazonError, AWSError
   return false
 end
end
Run Code Online (Sandbox Code Playgroud)

只是,它没有捕获!( @ ^%@&$*%#错误,报告为:

Aws::AwsError: NoSuchKey: The specified key does not exist.
Run Code Online (Sandbox Code Playgroud)

我做错了什么/我需要捕获的错误类型是什么?

Ben*_*Hao 5

这有帮助吗?

begin
  # blah blah
rescue Aws::AwsError => ex
  return false
end
Run Code Online (Sandbox Code Playgroud)

更重要的是,它应该是begin ... rescue ... end.你可能会混淆它try ... catch.

  • :facepalm:@ rescue.注意 - 这就是为什么我嫉妒艺术家,当他们*熬夜并开始犯错误时,这很有趣,当我们*做*时,它是aaaaarrrrgggggg (3认同)