🐯

Lambda プロキシ統合からバイナリデータを返す

2022/08/20に公開

背景

APIGatewayのRESTAPIをS3プロキシとしてバイナリーファイルを取得できるようにしていましたが、取得できるファイルをクエリパラメーターで分岐したくなり、Lambdaを経由するように変更することになりました。
公式ドキュメントがある内容ですが、きちんと読まずにつまずいたので、まとめました。
https://docs.aws.amazon.com/ja_jp/apigateway/latest/developerguide/lambda-proxy-binary-media.html

実装方法

  1. Lambdaで返却したいバイナリーデータをbase64エンコードする
  2. LambdaでisBase64EncodedプロパティをTrueにする
  3. APIGatewayのバイナリーメディアの設定をする
    後方互換などを気にする場合、「*/*」を設定することで、クライアントからのAcceptの指定をする必要がなくなります。
    APIGatewayのバイナリーメディアの設定については、以下の記事を参考にさせていただきました。

https://qiita.com/inabajunmr/items/e49408ab356b6a63ea91

GitHubで編集を提案

Discussion