亚马逊aws - s3桶没有上传图像 - 它只创建密钥

时间:2016-01-20 21:08:02

标签: php laravel amazon-web-services amazon-s3 laravel-5

我正在使用Laravel 5.0并使用"aws/aws-sdk-php-laravel": "~2.0"

这是我上传图片的脚本

$s3 = App::make('aws')->get('s3');
$s3->putObject(array(
    'Bucket'     => 'greenhoppingbucket',
    'Key'        => 'sups',
    'Body'        => Input::file('file'),

));

执行后,只将密钥上传到s3存储桶

即,sups是创建的桶而不是图像。

我正在做的错误是什么,如何解决这个问题

1 个答案:

答案 0 :(得分:1)

试试这个:

$s3 = App::make('aws')->get('s3');
$s3->putObject(array(
    'Bucket'     => 'greenhoppingbucket',
    'Key'        => 'sups',
    'Body'        => File::get((string)Input::file('file')),

));

别忘了添加use File;

当你做'身体' =>输入::文件('文件'),你低价地将临时路径放入正文而不是文件内容。

File::get只是获取文件的内容