我试着使用,以获得从S3存储文件getObject
阅读从S3存储一个文件laravel得到错误
$s3 = AWS::createClient('s3');
$file = $s3->getObject(array(
'Bucket' => 'hotel4cast',
'Key' => $path->path,
'SaveAs' => public_path()
));
我得到以下错误
错误执行
"GetObject" on "https://s3.amazonaws.com/mybucket/filename.xlsx";
AWS HTTP error: Unable to open /var/www/html/laravel/public/ using mode r+: fopen(/var/www/html/laravel/public/):
ailed to open stream: Is a directory
如果我拿SaveAs
出和转储$file
我得到的数据,身体的对象,流所有的东西,但不知道该怎么做。
Public_path()只是laravel项目的公用文件夹的路径。并且$ path-> path是s3桶的路径,这个文件位于这个桶中,在这种情况下它会得到/foldername/filename.xlsx –
我更新了答案,只需在'public_path()'中添加'filename.xlsx'并检查你得到的文件或没有 – Qazi
我忘了提及我也试过这种方式也给了我同样的错误 –