Nodejs. Як зчитувати дані з потоку.

NodeJS. Як зчитувати дані з потоку.

Відео: Node JS Tutorial for Beginners # 30 - Handling POST Requests

Всім привіт! У цій статті ми розглянемо, як зробити свій власний настроюється потік в NodeJS.

У минулій статті ми розглянули, що таке потоки і буфери і як вони працюють. У цій же - створимо свій власний потік.

Відео: 46 - nodejs основи (Події і потоки: Управління потоками для читання)

Є два типи потоків, які ми можемо написати в NodeJS: writable and readable. Яка між ними різниця?

Writeable streams - дозволяють NodeJS записувати дані і відправляти їх.

Відео: 44 - nodejs основи (Події і потоки: Генерація подій і додавання слухачів)

Readable streams - дозволяють NodeJS зчитувати інформацію з потоку.




Ми також можемо написати потік, який зможе робити і те, і інше - Duplex.

Відео: Node.js Tutorial for Beginners 4 - Run First NodeJs Web Server

Коли ми відправляємо відповідь клієнту в NodeJS, ми відправляємо йому деякі дані. У цьому випадку ми будемо говорити про writeable stream, тому що ми будемо записувати дані в потік, які потім будуть відправлені клієнту. І навпаки: якщо NodeJS отримує дані звідкись, то ми будемо використовувати readable stream, тому що ми будемо зчитувати дані з потоку.




створіть файл readMe.txt, де напишіть який-небудь текст на кілька сотень рядків. Тепер зайдіть в app.js і напишіть наступне:

var http =require(`Http`) -
var fs =require(`Fs`) -
var myReadStream = fs.createReadStream(__dirname +`/readMe.txt`,`Utf8`) -
myReadStream
.on(`Data`,function(chunk){
console
.log(`Отримано новий обсяг даних:`) -
console
.log(chunk) -
}) -

Отже, що тут відбувається? Спочатку ми підключаємо потрібні нам модулі, потім створюємо змінну myReadStream, в яку будуть надходити маленькі обсяги даних з методу createReadStream (), в якому ми вказуємо повний шлях до нашого файлу readMe.txt, а також кодування, щоб дані відобразилися в потрібному нам вигляді.

Тепер ми вішаємо подія на нашу змінну, щоб робити щось, коли прийдуть нові дані. Як тільки приходять нові дані, то викликається анонімна функція, в якій ми з допомогою функції console.log () виводимо текст про отримання нового обсягу даних, а також самі ці дані з змінної chunk.

Якщо ви запустите app.js, то побачите, що вам виведені весь текст, який ви ввели в файлі readMe.txt, але розбитий на кілька шматочків.

В принципі, нічого складного тут немає, проте це значно прискорить роботу вашого сайту при дійсно великих обсягах даних.

Отже, на цьому сьогодні все. Ми роздивились, як створити потік для зчитування даних в NodeJS, а в наступній статті поговоримо про те, як їх туди записувати.

Дякую за увагу!

Поділися в соціальних мережах:

Схожі
Nodejs. Оброблювач подій.Nodejs. Оброблювач подій.
Nodejs. Що таке pipe ().Nodejs. Що таке pipe ().
Nodejs. Що таке потоки і буфери.Nodejs. Що таке потоки і буфери.
Nodejs. Що таке query strings.Nodejs. Що таке query strings.
Nodejs. Вступ.Nodejs. Вступ.
Nodejs. Template engine. Частина 2.Nodejs. Template engine. Частина 2.
Nodejs. Як обробляти post запити.Nodejs. Як обробляти post запити.
Nodejs. Починаємо роботу з express.Nodejs. Починаємо роботу з express.
Nodejs. Потоковий висновок html сторінки.Nodejs. Потоковий висновок html сторінки.
Nodejs. Шаблони модулів.Nodejs. Шаблони модулів.
» » Nodejs. Як зчитувати дані з потоку.