Передача потока через посредника перед передачей по конвейеру другому потоку
Я пишу приложение Express, которое подключается к AWS S3. Одна конечная точка извлекает файлы из корзины S3 и затем отправляет их клиенту с помощью res. Так выглядит этот обработчик
const handler = (req, res) => {
const s3Stream = awsS3.getObject( `my params` ).createReadStream()
s3Stream.pipe(res).on('error', function(err) {
// capture any errors that occur when writing data to the file
console.error('File Stream:', err)
return res.status(500).send()
})
}
Теперь у меня есть вариант использования, когда мне нужно обработать данные, возвращаемые S3, прежде чем я передам их в res и отправлю клиенту, так как мне нужно передать данные через функцию и преобразовать их. Возможно ли это, и как мне это сделать? Приветствуются любые примеры кода или ссылки на них.