Actualmente estoy haciendo uso de un complemento de node.js llamado s3-upload-stream para transmitir archivos muy grandes a Amazon S3. Utiliza la API de varias partes y, en su mayor parte, funciona muy bien.
Sin embargo, este módulo muestra su antigüedad y ya tuve que hacerle modificaciones (el autor también lo ha desaprobado). Hoy me encontré con otro problema con Amazon, y realmente me gustaría tomar la recomendación del autor y comenzar a usar el aws-sdk oficial para realizar mis cargas.
PERO.
El SDK oficial no parece admitir la conexión a s3.upload()
. La naturaleza de s3.upload es que debe pasar la secuencia legible como argumento al constructor de S3.
Tengo aproximadamente más de 120 módulos de código de usuario que procesan varios archivos y son independientes del destino final de su salida. El motor les entrega un flujo de salida escribible y canalizable, y lo canalizan. No puedo entregarles un AWS.S3
objeto y pedirles que lo llamen upload()
sin agregar código a todos los módulos. La razón por la que utilicé s3-upload-stream
fue porque soportaba tuberías.
¿Hay alguna manera de hacer que aws-sdk sea s3.upload()
algo a lo que pueda canalizar la transmisión?