我已经在elasticbeanstalk上部署了REST API,它将图片上传到s3存储桶。
REST API是用node.js编写的,前端是Reactjs。
当我调用托管在elasticbeanstalk上的REST API时,它可以将文件上传到s3。上传后,文件可以访问并正确显示。
我还在本地主机上部署了REST API,并上传了文件。它工作得很好。上传的文件显示正确。
或者,我也将API网关配置为弹性with和树干。当我通过API网关调用相同的REST API时,它可以将文件上传到s3。上传后,文件在存储桶中可用,但不知何故该文件未正确打开。文件似乎已损坏。这可能是访问策略的问题。
有一次我在文件中也看到了这个问题。
<Error>
<Code>AccessDenied</Code>
<Message>Access Denied</Message>
<RequestId>10292CE4C4D62A301</RequestId>
<HostId>XJjQBB3DwB6H0lVkS5cHpj3D9ysTa9tApFaacsklg6MGFEnRwyRWLgnVojM8jY3TpCZ6/NQfMogg=</HostId>
</Error>这是正确显示的文件。直接从本地宿主机或弹性beanstalk调用REST API上传。https://images-for-naradej.s3.amazonaws.com/2021-01-14T23%3A39%3A49.938Z-largebanner.jpg
这是未显示的文件。调用弹性豆茎接入的API网关上传。https://images-for-naradej.s3.amazonaws.com/2021-01-14T23%3A46%3A23.030Z-largebanner.jpg
我不确定通过API网关上传文件时,文件被损坏或访问被拒绝的原因。
有人能帮我一下吗?
发布于 2021-01-16 21:12:35
通过在api网关中添加二进制媒体类型修复此问题。类型应为"multipart/form-data“

https://stackoverflow.com/questions/65728807
复制相似问题