Как сохранить файл в базе данных Firestore из запроса multipart / formData? - PullRequest
0 голосов
/ 29 сентября 2019

У меня есть функция firebase:

//Functions and firestore requirements are here

exports.saveData = functions.https.onRequest(async (req, res) => {
  console.log("Data received")
  const busboy = new Busboy({headers: req.headers});
  const fields = {}
  const uploads = {}

  //Push fields that are not file in fields
  busboy.on('field', (fieldname, val) => {
    console.log(`Processed field ${fieldname}: ${val}.`);
    fields[fieldname] = val;
  });
  //Push files in uploads
  busboy.on('file', (fieldname, file, filename) => {
    console.log('File :', file);
    const filepath = path.join(tmpdir, filename);
    uploads[fieldname] = filepath;
  });
  busboy.on('finish', () => { 
    console.log(uploads)
    console.log(fields)
    db.collection("a_collection").add({
        a: fields.a,
        b: fields.b,
        file: "Help ! From the client, I send an image. Which value do I need to save ?"
    })
    .then(function () {
        res.send("Data is saved")
    })
    .catch(function (error) {
        res.status(400).send(error)
        console.error("Error :" + error)
    })
  });

  busboy.end(req.rawBody);
  

})

Я хочу сохранить изображения и данные из запросов multipart / formData в базе данных Firestore.Как я могу это сделать ?Нужно ли сохранять изображение base64 или есть другой способ сохранить файлы в облачном хранилище Google Cloud?

Мой английский не идеален, Извините: /

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...