如何从url加载图像到nodejs的缓冲区
我是新的nodejs,并试图build立一个服务器,我从图像获取exif信息。 我的图片是在S3上,所以我希望能够传递s3 url作为参数,并从中获取图片。
我使用下面的ExifImage项目来获取exif信息,并根据他们的文档:
“而不是在文件系统中提供一个图像的文件名,你也可以将缓冲区传递给ExifImage。”
我怎么能加载一个图像到缓冲区的节点从一个URL,所以我可以将其传递给ExifImage函数
ExifImage项目: https : //github.com/gomfunkel/node-exif
谢谢你的帮助!
尝试像这样设置请求:
var request = require('request').defaults({ encoding: null }); request.get(s3Url, function (err, res, body) { //process exif here });
这将导致请求输出缓冲区而不是string。
使用请求库。
request('<s3imageurl>', function(err, response, buffer) { // Do something });
此外, 节点图像标题可能是你感兴趣的。 这听起来像需要一个stream,所以它可能不需要从S3下载完整的图像来处理标题。
用正确的callback签名更新。