Страницы

понедельник, 22 февраля 2016 г.

Node.js Stream. Promise vs. Callback

Пайпинг потоков в Node.js - дело нехитрое. Главное не забывать слушать ошибки в каждом потоке. И на сегодня это единственный кейс, где я нахожу оправданным использование промисов вместо функций обратного вызова. Объясню почему на простом примере. Для начала напишем три кастомных конструктора, которые наследуют от ReadableTransform, Writable и работают в Object Mode:

среда, 10 февраля 2016 г.

Node.js MongoDB Iterate Cursor

Три паттерна итерации по курсору MongoDB: первый - "классический" - на старых добрых функциях обратного вызова, второй - "на любителя" - на промисах, третий - "для извращенцев эстетов" - на промисах и генераторах с использованием co, второй и третий можно применять только со второй версией MongoDB Native NodeJS Driver и Node.js не меньше четвертой версии.

воскресенье, 7 февраля 2016 г.

Node.js FFmpeg Stream

Как определить наличие обложки в аудио файле и вытащить ее из потока с помощью FFmpeg на Node.js. Может пригодиться для загрузки музыки на веб-сайт, создания каталога музыкальных произведений из уже существующих файлов и т.п. Для приготовления понадобится аудио файл в формате mp3, без обложки, плюс пара картинок в формате JPG и PNG.