イメージをローカルストレージにダウンロードする方法は?

Nov 23 2020

Node.js Firebase Cloud Functionを使用していますが、Google Cloud Vision APIに送信できるように、FirebaseStorageに保存している画像を取得する必要があります。

Vision APIでは、ローカル画像ファイルから送信する必要があります。

// const fileName = 'Local image file, e.g. /path/to/image.png';
// Performs safe search detection on the local file
const [result] = await client.safeSearchDetection(fileName);
const detections = result.safeSearchAnnotation;

リモートイメージをローカルストレージにダウンロードするにはどうすればよいですか?

たとえば、この画像をローカルストレージに保存したいとします。

  const image = await axios.get(imgUrl)
  

回答

1 kg99 Nov 23 2020 at 14:02

ファイルシステムに保存してみませんか https://nodejs.org/api/fs.html#fs_fs_writefile_file_data_options_callback、後で取得するために名前を覚えておいてください。何かのようなもの:

const image = await axios.get(imgUrl);
const path = '/home/some/path/somefilename.jpg'
fs.writeFile(path, image, function(err, data) {
    if (err) {
        throw (err);
    }
    // save filepath to wherever for later.
    
});