当我从s3存储桶以编程方式下载文件时,它给我错误看来我们不支持此文件格式

时间:2019-06-21 17:56:44

标签: amazon-s3 aws-sdk

当我从s3存储桶下载文件时,我正在使用aws-sdk来下载文件,但是当我打开该文件时,它显示It looks like we don't support this file format,这是我的完整代码,任何人都可以检查一下我的代码并帮助我为什么图像无法打开图像,我的代码完全是PHP,它看起来像是小错误,但对我不起作用

$bucket = '*****';
    $keyname = '1560346461616.jpg';
    $s3 = new S3Client([
        'version' => 'latest',
        'region'  => '******',
        'credentials' => [
            'key'    => '******',
            'secret' => '******',
        ],
    ]);
    $result = $s3->getObject([
        'Bucket' => $bucket,
        'Key'    => $keyname,
    ]);
    header("Content-Type: {$result['ContentType']}");
    header('Content-Disposition: attachment; filename='.$keyname); 
    echo $result['Body'];
} catch (Exception $e) {   
    echo $e->getMessage() . PHP_EOL;
}

1 个答案:

答案 0 :(得分:0)

检查s3中存储的.jpg文件的内容类型。确保此对象的元数据为image / jpeg。我认为它与您下载的对象无关,也许下载文件已损坏。