我正在尝试使用他们的SDK for PHP从AWS S3服务器下载数据,但是在第二次请求时它崩溃了这个错误:
致命错误:未捕获的Aws \ S3 \ Exception \ AccessDeniedException:AWS 错误代码:AccessDenied,状态代码:403,AWS Request ID ...
这是我的代码:
use Aws\Common\Aws;
$aws = Aws::factory(
array(
'key' => 'my_key',
'secret' => 'my_secret',
)
);
$awsClient = $aws->get('s3');
$result = $awsClient->getObject(
array(
'Bucket' => 'my_bucket',
'Key' => 'my_key',
)
);
第一个请求非常有效,但第二次调用它时,它会因上面的异常而崩溃。
有谁知道如何解决这个问题?
非常感谢。
答案 0 :(得分:0)
我发现自己就是解决方案。
原来我在第二个请愿书中发了一个空字符串。如果AWS收到它不喜欢的数据,则抛出Aws \ S3 \ Exception \ AccessDeniedException异常。
但是,很高兴知道,因此我们可以捕获该异常,或更好地控制输入。