Estoy buscando una solución también. Tal vez este sea de alguna ayuda,
From AWS Dev Commnity Pero en muchos idiomas (PHP, Java), por archivos de gran tamaño, usted tiene que utilizar corrientes a través del cual el entorno de idioma tomará trozos de su archivo grande uno después de la otra (con el fin de llenar memoria central con una enorme cantidad de datos para el http POST de S3 necesita para la carga.
lo bueno de corriente es que tienen una devolución de llamada llamado cuando el siguiente fragmento se lee para PONER (en el sentido https) a S3. Puede usar esta devolución de llamada para calcular y mostrar el progreso en la interfaz de usuario del cliente.
Consulte el documento de libcurl para ver en detalles de cómo funciona esto.
Actualización: Parece que hay dos opciones sencillas.
- Flash, via the FileReference class
- With a Java applet
Yo personalmente odio el uso de extensiones de 3 ª parte (Flash, Java) para realizar una función de aplicación, pero no he encontrado otra manera.
Flajaxian parece ser libre ahora – BigJoe714
@ BigJoe714 gracias por la información! –
Es fácil realizar la barra de progreso si está cargando directamente de, digamos, JS usando el evento httpUploadProgress. Pero ¿cómo podría hacerlo? la barra de progreso JS-> PHP proxy-> S3? – trainoasis