我想使用 FORMDATA 通过 api 网关将邮递员的图像放入我的 S3 存储桶中。 但是,每当我尝试在 s3 上打开图像时,它都会下载图像并且无法打开图像。
当我通过将上传设置为二进制而不是表单数据来上传图像时,图像正确显示。
我已将 API 网关设置中的二进制媒体类型设置为 /,以供那些想知道的人使用。我做错了什么?
我从未见过这项工作,并且在尝试使用 api 网关处理 FORMDATA 时总是看到损坏的文件。例如,当尝试上传文件(如 JPG 文件)时,使用 API 网关 -> Lambda 函数 -> S3 存储桶,有一种更好的方法。
在 AWS Code Lib 的photo asset management 应用程序中,它显示了从 React 应用程序到 api 网关的请求 -> Lambda 函数生成一个 Amazon S3 预签名 URL,使 React 应用程序能够上传 JPG文件到 S3 存储桶。也就是说,React 应用程序使用预签名 URL 成功将图像上传到存储桶。
现在我可以从 React App 中选择 Sailboat JPG 图像了。
当我点击上传时,JPG 被上传到 S3 存储桶,如下所示: