我正在尝试从存储桶中获取 .jpg 文件并将其发送回 api 网关。当我看到正在记录的内容时,我相信我的设置是正确的。它可以很好地从 s3 中获取文件,而 gm 是 graphicsmagick 库。不确定我是否正确使用它。
在 lambda 函数中,我这样做(很多代码来自 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);
}
]
);
响应头有 content-length: 85948,这看起来不对,因为原始文件只有 36kb。有人知道我在做什么错吗?