我想在amazon s3的image标签中显示图像
<img alt="" class="pictureWidth" src="https://xyz.s3.amazonaws.com/images/estimates/1_6.jpg">
我检查了图像的位置,它有权限并且我在浏览器中运行这个url它显示如下
images/estimates/1_6.jpg
下面是上传图像的示例代码
$result = $s3->putObject(array(
'Bucket' => $s3bucketName,
'Key' => $fileName,
'Body' => $fileName,
'ContentType' => 'text/plain',
'ACL' => 'public-read',
'StorageClass' => 'REDUCED_REDUNDANCY',
));
我也尝试了'ContentType' => 'image/jpeg',但没有运气
https://servicefusion.s3.amazonaws.com/images/estimates/7.jpg
有什么问题吗?
您不应该使用'Body'
,而应该使用'SourceFile'
,否则您将上传一个文件名作为其内容的文件。
$result = $s3->putObject(array(
'Bucket' => $s3bucketName,
'Key' => $fileName,
'SourceFile' => $fileName,
'ContentType' => 'image/jpeg',
'ACL' => 'public-read',
'StorageClass' => 'REDUCED_REDUNDANCY',
));
参见:putObject
try
$result = $s3->putObject(array(
'Bucket' => $s3bucketName,
'Key' => $fileName,
'Body' => $fileName,
'ContentType' => 'image/jpeg',
'ACL' => 'public-read',
'StorageClass' => 'REDUCED_REDUNDANCY',
));
刚刚更新的image/jpeg
不是images/jpeg
的其他类型的文件类型,请参阅这里:
http://www.utoronto.ca/web/htmldocs/book/book-3ed/appb/mimetype.html
如果这不是你的问题,请参考:
http://s3browser.com/features-content-mime-types-editor.php