我想設置readstream.write之間的超時,但我不斷收到錯誤:結束後寫入。如何在res.write之間設置超時。謝謝。這是我的代碼。nodejs設置數據響應超時
app.get('/video', function (req, res) {
var readStream = fs.createReadStream('video.mjpeg');
res.writeHead(200, {'Content-Type': 'multipart/x-mixed- replace;boundary=ThisString'});
readStream.on("data", (chunk) => {
res.write(chunk, 'binary');
setTimeout(function() {
res.write('ThisString');
}, 200);
console.log("Writing to client");
});
readStream.on("end",() => {
readStream.destroy();
res.end();
console.log("End of data");
});
});
我想在客戶端顯示視頻,問題是,mjpeg讀取速度很快,因此無法創建視頻。任何幫助將不勝感激。
是不是因爲在200ms之前結束呼叫? –
也許你可以將它們推入一個隊列中,在兩次執行之間設置一個最小間隔?我在這裏沒有真正理解這一點。 –
如何在響應中添加延遲以使其正常工作? – Matt