WritableStream задокументирован в облачном хранилище Google?Как ждать загрузки? - PullRequest
1 голос
/ 09 апреля 2019

Я пытаюсь использовать облачные функции Google для перекодирования видео из одного сегмента в другой.У меня есть это:

  const remoteWriteStream = bucket.file(dstFile).createWriteStream()

и затем я направляю вывод ffmpeg на него.Прямо сейчас я возвращаюсь из своего GCF, как только ffmpeg заканчивается, но иногда файл еще не существует.Я понимаю, что поток "испускает finish событие", когда он завершен.Из документов в https://cloud.google.com/nodejs/docs/reference/storage/2.3.x/File#createWriteStream я вижу, что createWriteStream() возвращает WritableStream, но я не могу найти никаких документов по этому объекту, поэтому я не знаю, как ждать события "finish".

1 Ответ

1 голос
/ 09 апреля 2019

Если вы понимаете, как работает узел Writable , тогда вы понимаете, как работает WritableStream.Я думаю, что документы JavaScript API немного сбивают с толку.Вот как выглядит TypeScript определение File.createWriteStream:

createWriteStream(options?: CreateWriteStreamOptions): Writable;

Таким образом, вы можете видеть, что оно на самом деле просто возвращает Writable, который определен следующим образом в узле:

class Writable extends Stream implements NodeJS.WritableStream { ... }
...