Comment télécharger l'image dans le stockage local?

Nov 23 2020

J'utilise Node.js Firebase Cloud Function mais j'ai besoin d'obtenir l'image que j'ai stockée dans Firebase Storage afin de pouvoir l'envoyer à l'API Google Cloud vision.

L'API Vision nécessite l' envoi à partir du fichier image local:

// 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;

Comment télécharger une image distante dans le stockage local?

Par exemple, je veux stocker cette image dans le stockage local:

  const image = await axios.get(imgUrl)
  

Réponses

1 kg99 Nov 23 2020 at 14:02

Pourquoi ne pas enregistrer sur le système de fichiers https://nodejs.org/api/fs.html#fs_fs_writefile_file_data_options_callback, souvenez-vous du nom pour obtenir plus tard. Quelque chose comme:

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.
    
});