I've a 用 Go 编写的 Lambda 函数 https://github.com/mhausenblas/imgn/blob/master/functions/app/uploadimg/main.go应该允许图像文件上传——通过 HTML 表单/JavaScript https://github.com/mhausenblas/imgn/blob/master/functions/ui/upload.js以及 API 网关集成 — 集成到 S3 存储桶中,所有这些都在SAM模板 https://github.com/mhausenblas/imgn/blob/master/functions/app/template.yaml.
以下是 Lambda 函数执行日志的示例:
现在的问题是,对于任何 JPEG 或 PNG 文件,我都会得到损坏的结果:
- 生成的图像的文件大小(解析后得到的大小)
multipart
媒体消息)大于原始文件大小,例如:8kB(原始)到 12kB(S3 存储桶)。
- 当我将原始 PNG 或 JPEG 文件与 S3 存储桶中的结果文件进行比较时
hexdump
它们看起来几乎相同(也就是说:我怀疑是否涉及 base64 编码问题)。
- 有趣的是,对于
text/plain
媒体类型此设置有效。
我试图找出问题所在,目前我的预感是 API 网关配置中缺少某些内容。 FWIW,我尝试了这个,但没有观察到行为的变化:
$ aws apigateway update-integration-response \
--rest-api-id XXX --resource-id XXX \
--http-method POST --status-code 200 \
--patch-operations op='replace',path='/contentHandling',value='CONVERT_TO_BINARY'`
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)