Cargar archivo directamente a S3 con la barra de progreso [cerrado]
-
20-08-2019 - |
Pregunta
En relación con esta pregunta, Cargue archivos directamente en Amazon S3 desde la aplicación ASP.NET , ¿hay alguna forma de hacer esto y tener una barra de progreso?
---- EDITAR ----
Dos días después y todavía no tuve suerte con una forma directa. Encontré una cosa que parece prometedora pero no gratuita: http://www.flajaxian.com/
Utiliza flash para cargar directamente a S3 con una barra de progreso.
Solución
Estoy buscando una solución también. Tal vez esto sea de alguna ayuda,
De AWS Dev Commnity Pero en muchos lenguajes (PHP, Java), para archivos grandes, tienes que usar transmisiones a través del cual el entorno del lenguaje tomará fragmentos de tu gran archivo uno después del otro (para llenar memoria central con gran cantidad de se necesitan datos para la http POST de S3 para la carga.
Lo bueno de la transmisión es que tienen una devolución de llamada llamada siempre el siguiente fragmento se lee para más PONER (en el sentido https) datos a S3. Puede usar esta devolución de llamada para calcular y mostrar el progreso en el cliente IU.
Vea el documento de libcurl para ver en detalla cómo funciona todo esto.
Actualización: Parece que hay dos opciones sencillas.
Personalmente odio usar extensiones de terceros (Flash, Java) para hacer que una aplicación funcione, pero no he encontrado otra forma.
Otros consejos
html5 javascript puede permitirte hacerlo, si no te importa la falta de soporte del navegador (Firefox y Chrome solo a partir de esta publicación_ Ejemplo aquí: https://developer.mozilla.org/en/Using_files_from_web_applications
Esto no es específico de AWS, pero puede ayudarlo a acercarse.
Otro enfoque es usar algo como Uber Uploader ( http://uber-uploader.sourceforge.net/ ) que es una solución híbrida perl / php con una barra de progreso. Simplemente cargue los archivos en su servidor y luego haga que su servidor los envíe por FTP en segundo plano al destino final. Es un paso adicional, pero le da algo de tiempo para realizar cualquier procesamiento / codificación / etc. que pueda necesitar antes de enviar a S3.