使用AWS SDK for PHP下载多个数据

时间:2015-01-22 10:28:09

标签: php amazon-web-services amazon-s3 aws-sdk

我正在尝试使用他们的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',
    )
);

第一个请求非常有效,但第二次调用它时,它会因上面的异常而崩溃。

有谁知道如何解决这个问题?

非常感谢。

1 个答案:

答案 0 :(得分:0)

我发现自己就是解决方案。

原来我在第二个请愿书中发了一个空字符串。如果AWS收到它不喜欢的数据,则抛出Aws \ S3 \ Exception \ AccessDeniedException异常。

但是,很高兴知道,因此我们可以捕获该异常,或更好地控制输入。