gpt4 book ai didi

java - 我的 s3 存储桶中的图像不会在浏览器中打开,它们只会下载

转载 作者:行者123 更新时间:2023-12-02 02:18:41 25 4
gpt4 key购买 nike

如何在浏览器中打开 s3 存储桶上的图像?

我已经设置了一个 Amazon s3 存储桶来托管我的 web 应用程序的图像,我遇到的问题是,当我单击图像的链接时,它将下载图像而不是在浏览器中显示它。

  1. 我已将元数据设置为“Content-Type: image/*”
  2. 我已将权限设置为公开

这是我正在使用的代码:

private void uploadFileTos3bucket(String fileName, MultipartFile file) 
{
try
(InputStream is = file.getInputStream())
{ ObjectMetadata metadata = new ObjectMetadata();
metadata.setContentLength(file.getBytes().length);
metadata.setLastModified(new Date());
metadata.setContentType("image/*"); s3client.putObject(new
PutObjectRequest(bucketName, fileName, is, metadata).withCannedAcl(CannedAccessControlList.PublicRead)); }
catch(IOException e) { e.printStackTrace();
}
}

有人还有其他想法或解决方案吗?

最佳答案

考虑到 S3 中的图像采用 .png 格式,请将您的 Content-Type 更改为 image/png。您需要根据 S3 存储桶中的设置设置适当的内容类型。例如,如果是文本,则将其设置为text/plain。同样,对于图像,将其设置为image/png。另外,您的文件内容类型不应该是binary/octet-stream,否则,它不会打开,而是会下载。

关于java - 我的 s3 存储桶中的图像不会在浏览器中打开,它们只会下载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48875046/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com