【问题标题】:How can I view the direct link on an Amazon S3 browser?如何在 Amazon S3 浏览器上查看直接链接?
【发布时间】:2021-06-27 02:14:20
【问题描述】:

我将我的数据托管在 Amazon S3 存储桶中。我的客户想直接在浏览器中查看链接而不是下载它,有人知道如何在帐户中编辑它。 https://s3.ap-southeast-1.amazonaws.com/faceangiang/uploads/photos/2021/06/fag_25852ed53ec643754a1b5ff366d55128.png

【问题讨论】:

    标签: amazon-web-services amazon-s3


    【解决方案1】:

    如果我们抓取 URL 的头部,我们可以看到图片的 content-type 是application/octet-stream

    curl -X HEAD -I https://s3.ap-southeast-1.amazonaws.com/faceangiang/uploads/photos/2021/06/fag_25852ed53ec643754a1b5ff366d55128.png
    

    给出以下响应:

    HTTP/1.1 200 OK
    x-amz-id-2: Vjf6IS4POj2NMre0IJaHZeQMcJyFd/AMgFl77kK5sdWZakpfSHUeycZj1/8619C3rArd3QKunwk=
    x-amz-request-id: JSW0VBMFXDDKFJGZ
    Date: Sat, 26 Jun 2021 08:40:37 GMT
    Last-Modified: Sat, 26 Jun 2021 08:10:49 GMT
    ETag: "82dfa35719adef79821b4e0f90c74ab7"
    Accept-Ranges: bytes
    Content-Type: application/octet-stream
    Server: AmazonS3
    Content-Length: 169464
    

    为了让您的浏览器显示图像,您必须将内容类型设置为image/png

    我们使用PutObject上传图片时可以设置内容类型。

    此外,根据answer,还有一些方法可以更改存储桶中现有图像的内容类型:

    aws s3 cp \
           s3://BUCKET-NAME/ \
           s3://BUCKET-NAME/ \
           --exclude '*' \
           --include '*.png' \
           --no-guess-mime-type \
           --content-type="image/png" \
           --metadata-directive="REPLACE" \
           --recursive
    

    这将递归地更改所有 .png 图像的内容类型。

    【讨论】:

    • 我需要在 aws s3 的什么地方添加它。谢谢
    • 正如我所说,您在上传图片时根据您使用的语言/库设置内容类型。上面给出的命令可以在您的终端中使用 AWS-CLI 执行。如果您想从 AWS 控制台更改内容类型,请参阅 @John Rotenstein 的答案。
    【解决方案2】:

    听起来对象上传到 Amazon S3 时没有任何关于内容类型的标识。

    如果您导航到 Amazon S3 中的对象并查看 元数据,它应该将 Content-Type 显示为 image/png

    这告诉网络浏览器正在检索的文件类型。如果缺少此文件,浏览器将改为下载文件。 (嗯,它实际上在这两种情况下都会下载它,但如果它知道文件是 png,它会显示它而不是提供将其保存到磁盘。)

    Content-Type 可以在文件上传到 S3 时提供。如果您通过管理控制台或 AWS CLI 上传,则会自动为您设置。

    【讨论】:

    • 我不是专家,我应该在 AWS S3 中做什么。谢谢
    • 对于任何现有对象,您需要添加元数据(如上所示),以便网络浏览器知道正在下载什么。对于您上传的任何未来对象,您需要将元数据指定为上传的一部分。文件是如何上传到 S3 的?
    猜你喜欢
    • 2013-09-06
    • 2013-07-09
    • 2013-04-25
    • 1970-01-01
    • 1970-01-01
    • 2011-05-12
    • 1970-01-01
    • 2018-04-12
    • 2011-06-06
    相关资源
    最近更新 更多