在aws lambda nodejs上下载图像

时间:2017-12-13 11:56:06

标签: node.js amazon-web-services lambda

我需要将图像下载到我的aws lambda函数中并将其用于以后使用。 我曾尝试使用http.get()方法,但它需要本地文件系统来放置图像,我想这在lambda函数的情况下是不可用的。

我也尝试使用request.get方法,但也没有向我回复正确的回复。

目前我的功能如下:

function download_image(image_url){
    return new Promise(resolve =>{
        request.get(image_url, function (error, response, body) {
            if (!error && response.statusCode == 200) {
                // let data = "data:" + response.headers["content-type"] + ";base64," + new Buffer(body).toString('base64');
                resolve("Downloaded")
            }
            else{
                resolve("Failed Downloaded")
            }
        });
    });
}

我公开寻找在s3上存储图像的方法,或者我是否可以使用任何格式将其存储在dynamo db中。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

我非常确定你可以在lambda中使用http.get。 在概念中,您将执行请求,将其保存到字节数组或缓冲区,然后将其写入s3。 s3对于文件是有意义的,并且检索比dynamodb更容易,并且还支持写入和读取的dynamodb。

Saving an image stored on s3 using node.js?