2017-08-25 20 views
0

當我嘗試從公共s3存儲桶中獲取對象時,我得到null或奇怪的響應,當我var_dump時它是一個空對象(Generator)。列出對象時S3Client上的空或奇怪的響應

$s3 = new Aws\S3\S3Client([ 
    'region' => 'eu-west-1', 
    'version' => 'latest' 
]); 

$result0 = $s3->listObjects([ 
    'Bucket' => 'pub-bucket-name' 
]); 

$result1 = $s3->getIterator(
    'ListObjects', 
    ['Bucket' => 'pub-bucket-name'] 
); 

$result2 = $s3->getObject([ 
    'Bucket' => 'pub-bucket-name', 
    'Key' => 'a_known_filename.json' 
]); 

結果0和2爲空,結果1爲空的發電機對象。

有人知道爲什麼會發生這種情況? 我確定這個存儲桶的名稱,因爲我可以通過3Hub進行連接,所以我知道這些文件名。

感謝

回答

0

由於它是一個公共鬥,嘗試設置 '憑據' 爲false:

$s3 = new Aws\S3\S3Client([ 
    'region' => 'eu-west-1', 
    'version' => 'latest', 
    'credentials' => false 
]); 

這應該工作

+0

工作,謝謝 – RavRecon