amazon-s3 - 如何在无服务器中上传多部分表单数据
问题描述
我正在通过 AWS Lambda 使用 multipart/form-data 从前端(Angular)将文件上传到 S3。我已经安装了serverless-apigw-binary插件,并且在我的 serverless.yml 中包含了该插件文档中提到的配置。在我的 API 网关上,我可以看到插件添加了 serverless.yml 文件中提到的二进制媒体类型值
但是,当我在 S3 上查看文件时,它已损坏。无论我上传什么类型的文件(图片、文档、pdf),我都无法在下载时打开它。当我从 Postman 向我的 lambda 函数发出直接 POST 请求时,也会出现此问题。
我错过了任何步骤吗?在 Lambda 中接受二进制文件的正确方法是什么?
解决方案
您需要在 AWS 中为 API Gateway 配置二进制媒体类型,以便能够处理 multipart/form 之类的东西。
推荐阅读
- git - Git远程到自己的服务器
- php - 如何在 laravel 提供者的模型 config.php 文件中动态地将变量名传递给模型
- django - 为什么我不能通过 django-admin 使用我的 Django 实用程序
- java - 如何正确地将 int 值从 firebase 实时数据库检索到 textview?
- azure - 以编程方式进行带有排除项的 Azure 策略分配
- python - 如何在 Pandas Dataframe 中应用 If Else 语句?
- azure - 使用 HTTP 触发器调用逻辑应用时出现 DirectApiRequestHasMoreThanOneAuthorization 错误
- c - read() 不读取套接字缓冲区上的剩余字节
- substrate - 构建错误时出错 [E0282]:需要类型注释
- javascript - jsPDF,来自url的base64图像:未定义dataurl