REST API with API gateway
およびLambda
。プロフィール写真をアップロードするためのエンドポイントを作成したくありません。このエンドポイントは、ファイルをLambda
関数に渡し、そこでサイズが変更され、データベースに登録され、新しい画像のURLパスが返されます。
それらのサービスでそうする方法はありますか?オンラインで何も見つかりませんでした(私が見つけた唯一の提案は、IAMアクセス許可を必要とするS3に直接アップロードし、画像のサイズを変更するLambda関数をトリガーするイベントを発生させることです)。
ありがとう
[〜#〜]更新[〜#〜]
AWSはAPIGATEWAYを更新し、次のことができることを知っています エンドポイントを介してバイナリを送信する
コメントしてくれた@blueと@Manzoに感謝します
ファイルをS3に直接アップロードする場合、必ずしもIAM権限は必要ありません。 事前に署名されたS3 URL を返すAPIエンドポイントを作成します。これを使用して、ファイルをS3に直接アップロードできます。 APIエンドポイントの背後にあるLambda関数は、S3バケットの正しいIAM権限を必要とする唯一のものです。
API GatewayとLambdaは現在ネイティブにサポートされていないため、API Gatewayにエンコードされたbased64の画像にファイルを渡してから、Lambda関数に渡すことができます。 Lambda関数は、ベース64でデコードしてからサイズを変更し、データベースに登録して、新しい画像のURLパスを返すことができます。