我有一些图片的URL。
但是这些URL可能很快就会失效,所以我需要将它们存储到我的服务器上。
我选择使用Firebase Storage作为图片服务器,同时我在AppEngine上运行了一个Node.js应用程序。
实际上,我对Node.js和Web开发都是新手(我是一名Android开发者)。
我找到了图片下载代码。
var fs = require('fs'),
request = require('request');
var download = function(uri, filename, callback){
request.head(uri, function(err, res, body){
console.log('content-type:', res.headers['content-type']);
console.log('content-length:', res.headers['content-length']);
request(uri).pipe(fs.createWriteStream(filename)).on('close', callback);
});
};
download('https://www.google.com/images/srpr/logo3w.png', 'google.png', function(){
console.log('done');
});
在此之后,我可以将此图像上传到Firebase Storage。
但是在这种情况下,我认为它也会将图像数据存储到AppEngine中,对吗? 我不想要这样。 我只想将其存储到Firebase Storage中。
我可以在AppEngine上删除文件。 但是否有更清晰的方法?
我认为最好的情况(我想要的)是:
- 从URL下载图像到内存中的字节数组
- 然后将其上传到Firebase Storage。