Потоковая передача на узле Js - PullRequest
0 голосов
/ 17 июня 2019

Изучение потоков в узле JS.Мне интересно, почему мы используем Stream в узле js, когда у нас есть файловая система в узле js.

Ответ - потоковое распределение данных на части.и отправьте по сети.

для этого мы создадим узел js -> createReadStream (fileName) .pipe (res);

Мой рабочий узел Js Потоковый код.

const { createServer } = require('http');
const { createReadStream } = require('fs');
const fs = require('fs');

const fileName = './pika.mp4';

createServer( (req,res) => {

res.writeHead(200, {
    'Content-Type': 'video/mp4'
});

createReadStream(fileName).pipe(res);

}).listen(3000, () => console.log('Server running - 3000'));

Вывод совершенно без проблем,

Проблема в том, что если я не использую stream и не использую readFile или readFileSync, все равно получаю один и тот же вывод.

Код ->

const { createServer } = require('http');
const { createReadStream } = require('fs');
const fs = require('fs');

const fileName = './pika.mp4';

createServer( (req,res) => {

fs.readFile(fileName,(err,data) => {


res.writeHead(200, {
    'Content-Type': 'video/mp4'
});

res.write(data);

});

}).listen(3000, () => console.log('Server running - 3000'));

Я запутался, я не использую поток здесь, пока видео потоковое.

...