Obtenga un objeto de S3 en la función AWS Lambda y envíelo a Api Gateway

Estoy tratando de obtener un archivo .jpg de un cubo y enviarlo de nuevo a la puerta de enlace de la API. Creo que tengo la configuración correcta ya que veo cosas que se registran. Toma el archivo de s3 bien, y gm es la biblioteca graphicsmagick. Sin embargo, no estoy seguro de si lo estoy usando bien.

En la función lambda hago esto (gran parte del código proviene del ejemplo aws):

async.waterfall([
    function download(next) {
        console.log(srcKey);
        console.log(srcBucket);
        // Download the image from S3 into a buffer.
        s3.getObject({
                Bucket: srcBucket,
                Key: srcKey
            },
            next);
        },
    function transform(response, next) {
        console.log(response);
        next(null, 'image/jpeg', gm(response.Body).quality(85));

    },

    function sendData(contentType, data, next){
        console.log(contentType);
        console.log(data);
        imageBuffer = data.sourceBuffer;
        context.succeed(imageBuffer);
    }
    ]
);

El encabezado de respuesta tiene una longitud de contenido: 85948, lo que no parece correcto porque el archivo original tiene solo 36 kb. Alguien sabe lo que estoy haciendo mal?

Respuestas a la pregunta(2)

Su respuesta a la pregunta