如何在API网关中上传大文件> 5mb?使用无服务器和nodejs

时间:2018-04-04 05:12:23

标签: amazon-web-services aws-api-gateway serverless-framework

我正在做一个接收多个文件的API,(我读取它们然后在S3上传它们) 但我有大文件> 5mb的问题,只有当它收集一些小文件工作, 我认为它是API网关,只接受请求的限制大小 但即使这样,我也不知道如何改变这些价值

我正在使用nodejs,express,multer(multipart / form-data)和无服务器 对于该API,我使用函数putObject

上传文件 有人可以帮帮我吗? 问题真的是API Gatewy吗?怎么解决呢? 或者您认为这是什么问题?

感谢您使用文件> 5mb获得的错误答案

回复正文为{"message": "Internal server error"}

标题是:

Connection → keep-alive
Content-Length → 36
Content-Type → application/json
Date → Wed, 20 Jan 2016 21:49:57 GMT
Via → 1.1 bacf4777806846760313f3a392450fc4.cloudfront.net (CloudFront)
X-Amz-Cf-Id → CjIEJj6FlzXMZO3ht4mGU94L5LMBGjWQq921ddkMUCs96NPxswGIwA==
X-Cache → Error from cloudfront
x-amzn-RequestId → bf549be8-bfbf-11e5-9a15-c9a39c4aad35

我要检查使用预签名网址上传对象我确实不知道

你知道为什么我不能处理文件> 5mb?

修改

我一直在寻找并且我看到lambda AWS的限制为6 MB,我认为这是另一个问题,如果我使用预先签名的URL上传文件,问题是否会解决?

1 个答案:

答案 0 :(得分:1)

您的API会在一秒内收到多少文件?

API网关的Payload size限制为10MB,不能增加(其为硬限制)。但是,如果你说它已经不适用于5MB的文件,这不应该是问题...... 上传> 5MB,< 10MB文件?

时是否收到任何错误?

发现API Gateway Limits的有用链接。

回答第二个问题:how solve it?

另一种方法是使用Pre-Signed URLs将文件上传(putObject)到S3。