S3.getObject()を実行し、バイナリイメージを応答として出力するLambdaとAPIGatewayをセットアップしようとしています。最終的には、画像をs3に保存するのではなく、s3からプルしてその場でサイズを変更したいのですが、単純な画像でも出力できないようです。
私の単純なラムダは次のようになります。
'use strict';
const http = require('http');
exports.handler = (event, context, callback) => {
http.get('http://i.stack.imgur.com/PIFN0.jpg', function(res) {
var body = '';
res.on('data', function(chunk) {
// Agregates chunks
body += chunk;
});
res.on('end', function() {
callback(null, body);
});
});
};
「image/jpeg」を許可するようにAPIゲートウェイバイナリサポートを設定し、メソッド応答と統合応答でコンテンツタイプを設定しようとしました。
私はここで私の答えを見つけました: AWS Gateway API base64Decodeは文字化けしたバイナリを生成しますか?
[メソッドの作成]画面で[ラムダ関数]を選択したときにAWSコンソールに表示されない設定を変更するには、CLIコマンドが必要です。
これを読みましたか ブログ投稿 ?
これらの指示に従い、クライアントがContent-TypeヘッダーとAcceptヘッダーを正しく送信していることを確認してください