方法uploadAsync
自动确定并上传单个或多个块的对象。我们可以期望的预期2个不同类型的S3Exception
和S3MultipartUploadException
我们的$result['reason']
。我正在尝试模拟S3客户端的一部分以引发异常,这是由MockHandler完成的:
$s3->getHandlerList()->setHandler(new MockHandler([$result], null, null));
并且$result
是:
new S3Exception("", new Command("mockCommand"), [
'code' => 'mockCode',
'response' => new Response(401)
])
或以下两者之一:
new S3MultipartUploadException(new UploadState(['testid']))
由于S3MultipartUploadException
不是的实例,因此AwsException
出现此异常:
InvalidArgumentException: Expected an Aws\ResultInterface or Aws\Exception\AwsException.
我该如何处理这种情况?
我已经在项目仓库中询问了这个问题,他们确认这是一个错误https://github.com/aws/aws-sdk-php/issues/2143。