Функция и хранилище Firebase - PullRequest
0 голосов
/ 01 августа 2020

Можно ли создать файл JSON из облачной функции и сохранить его в облачном хранилище? Ответ: Да если да Как этого добиться? Ответ: Используя dataStream.pipe, см. Ниже пример

dataStream.pipe пример:

  var myJSON = JSON.stringify(Row);

  const stream = require('stream'),
    dataStream = new stream.PassThrough(),
    gcFile     = bucket.file("Leaderboard/users.json");

  dataStream.push(myJSON);
  dataStream.push(null);

  await new Promise((resolve, reject) => {
      dataStream.pipe(gcFile.createWriteStream({
        resumable  : false,
        validation : false,
        metadata   : {'Cache-Control': 'public, max-age=31536000'}
      }))
      .on('error', (error) => { 
        reject(error) 
      })
      .on('finish', () => { 
        resolve(true)
      })
  }) 

Спасибо,

1 Ответ

0 голосов
/ 01 августа 2020

При доступе к admin.storage() вы используете не обычный JavaScript SDK Firebase для хранилища, а фактически Node.js SDK для облачного хранилища. Итак, API другой, и в нем нет функции ref().

Некоторые примеры того, как загрузить файл с помощью Node.js SDK, см .:

...