我一直在为此苦苦挣扎-

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

只是,它不会捕获!(@ ^%@&$ *%#错误,它报告为:
Aws::AwsError: NoSuchKey: The specified key does not exist.

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

最佳答案

这有帮助吗?

begin
  # blah blah
rescue Aws::AwsError => ex
  return false
end

更重要的是,它应该是begin ... rescue ... end。您可能将其与try ... catch混淆了。

08-24 20:24