1. まとめ
API Gatewayのペイロードサイズについて確認する.2018/7/2現在,API Gatewayの最大ペイロードサイズは10MBとなっている.本記事では,10MBを超えたときの挙動を確認する.10MBを超えると,HTTP content length exceeded 10485760 bytes.
のエラーが返却される.最大ペイロードサイズについては上限緩和はできない模様.10MBを超える場合は,S3にデータをアップするなどして回避する必要がある.
2. 目次
- 1 まとめ
- 2 目次
- 3 確認
- 4 上限緩和
- 5 回避策
- 6 参考リンク
3. 確認
API Gatewayのペイロードサイズについて確認する.2018/7/2現在,API Gatewayの最大ペイロードサイズは10MBとなっている.Amazon API Gateway の制限と既知の問題にて確認出来る.実際に10MB以上のファイルを送った場合どうなる確認する.
10MB以上のでかい画像ファイルを準備する.
$ du -sh scene_large.jpg
17M scene_large.jpg
API Gateway+Lambdaでバイナリデータを処理を参考に,環境を構築する.
サイズが最大容量10MBを超えてるよとエラーが返却される.
$ curl -X POST -H 'Content-type: image/jpeg' --data-binary "@scene_large.jpg" https://xxxxxxxxxxxxx.execute-api.ap-northeast-1.amazonaws.com/v1/upload
HTTP content length exceeded 10485760 bytes.
10MBはちなみに10485760バイト
(10MB1024MB/KB1024B/KB=10485760バイト)
4. 上限緩和
Amazon API Gateway の制限と既知の問題に記載の通り,最大ペイロードサイズについては上限緩和出来ない.
5. 回避策
回避策としてS3にデータをアップする方法がある.
下記が参考になる.