Assalamualaikum, ребята, пожалуйста, помогите мне. Я пытаюсь сделать сервис потокового видео, используя nodejs и express. Я использую fs.createReadStream()
и pipe()
и отправляю его в ответ http. При обработке 1 пользователя это хорошо работает и не проблема. Когда 7 пользователей получают к нему доступ вместе, 7-й пользователь не имеет никакого ответа от http. Просто в ожидании. Видео не показывает. первые шесть пользователей не имеют никаких проблем. Пожалуйста, помогите мне
это фрагмент кода
const asset = path.join(__dirname,/content${data.path}${contentType.name}.${contentType.ext})
const stat = fs.statSync(asset)
const fileSize = stat.size
const range = req.headers.range
if(range){
const parts = range.replace(/bytes=/,"").split("-")
const start = parseInt(parts[0],10)
const end = parts[1]?parseInt([1],10):fileSize-1
const chunkSize = (end-start)+1
const file = fs.createReadStream(asset,{start,end})
const head = {
"Content-Range":`bytes ${start}-${end}/${fileSize}`,
"Accept-Ranges":"bytes",
"Content-Length":chunkSize,
"Content-Type":contentType.contType
}
res.writeHead(206,head)
file.pipe(res)
}else{
const head = {
"Content-Length":fileSize,
"Content-Type":contentType.contType
}
res.writeHead(200,head)
const file = fs.createReadStream(asset)
file.pipe(res)
file.on('error',(err)=>{
console.log(err)
})
}
`
** Должен ли я истощить буфер для его решения? **
спасибо всем, да благословит вас всех Бог