我需要将图像下载到我的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中。
任何帮助将不胜感激。
答案 0 :(得分:0)
我非常确定你可以在lambda中使用http.get。 在概念中,您将执行请求,将其保存到字节数组或缓冲区,然后将其写入s3。 s3对于文件是有意义的,并且检索比dynamodb更容易,并且还支持写入和读取的dynamodb。