fix: Use Stream.pipeline for response stream to properly close s3 stream

This commit is contained in:
William Oldham 2025-01-07 13:43:10 +00:00
parent 96d2ccf8a8
commit 1fd43ce0f7

View File

@ -2,6 +2,7 @@ import express from 'express';
import subdomain from 'express-subdomain';
import { getTaskFile } from '@/database';
import { getCDNFileStream } from '@/util';
import { Stream } from 'node:stream';
const npdl = express.Router();
@ -37,7 +38,13 @@ npdl.get([
}
response.setHeader('Last-Modified', new Date(Number(file.updated)).toUTCString());
readStream.pipe(response);
Stream.pipeline(readStream, response, (err) => {
if (err) {
console.error('Error with response stream: ', err.message);
response.end();
}
});
});
const router = express.Router();