确定AWS S3中文件的图像大小而不下载图像

时间:2018-10-10 14:38:40

标签: go image-processing amazon-s3

我有一些图像(jpg,png)上传到了aws s3存储桶。我想从图像(宽度和高度)中提取一些信息(lambda用golang编写)。不用下载图片就能做到吗?

2 个答案:

答案 0 :(得分:3)

您可以使用range标头对对象进行部分下载 看到这个答案S3: How to do a partial read / seek without downloading the complete file?

在AWS Go SDK功能(Downloader)DownloadWithContext中,它似乎应该提供范围功能

一旦有了部分文件,就有可能提取尺寸信息,请参见此答案What is the header size of png, jpg/jpeg, bmp, gif and other common graphics format?

答案 1 :(得分:0)

S3 不会为您计算尺寸。您事先计算它们。

您可以使用用户定义的元标记。您可以在发送对象时设置它们,或者在它们存在后更新它们。

对于私有对象,API 必须返回用户定义的元标记。

对于公共对象,您可以在对象的公共 url 中使用传统的 GET 动词或仅使用 http HEAD 动词。

即使是 javascript + ajax 也可以读取这个头信息。