formularios formulario estructura elementos ejemplo codigos codigo html http file-upload large-files

estructura - formulario html5



Carga de archivos grandes a través de un formulario html(más de 2 GB) (3)

¿Hay alguna forma de subir un archivo de más de 2 GB, usando la carga simple de formulario html? Anteriormente, he estado cargando archivos de gran tamaño a través de Silverlight usando fragmentación (dividir un archivo grande en segmentos y luego subir segmentos uno por uno y luego volver a ensamblar los segmentos en el servidor).

Ahora, tenemos el requisito de que solo tenemos que usar cargas de formularios simples html (aunque GWT). Por favor, guíame si hay alguna manera de lograr una gran carga de archivos de esta manera.

Si es imposible hacerlo con un html simple, ¿alguien me puede guiar sobre cómo puedo dividir y cargar un archivo en segmentos usando flex?


La limitación del tamaño de las solicitudes HTTP POST generalmente no está en absoluto en el lado HTML. La limitación está más en el lado del servidor. El servidor web debe configurarse para aceptar solicitudes POST grandes. El valor predeterminado generalmente suele ser de 2 GB y el servidor generalmente arrojará un error HTTP 500 sobre eso. El límite predeterminado a menudo se puede aumentar a 4GB, pero cualquier cosa más allá de eso llegará al límite de los sistemas de 32 bits. En sistemas de 64 bits con un sistema operativo de 64 bits, el límite teórico es mucho mayor, 16EB.

Si configura el servidor web para aceptar que las solicitudes POST grandes no son una opción, o cuando desea ir más allá del límite del servidor web, entonces no tiene otra opción que dividir el archivo en el lado del cliente y volver a ensamblar las partes en el servidor.

Dado que HTML es solo un lenguaje de marcado, no ofrece facilidades para dividir el archivo. Realmente tiene que usar un lenguaje de programación normal como C # (Silverlight) o Java (Applet) en el sabor de una pequeña aplicación que sirve en su página web. Muy probablemente también sea posible con Flash o Flex, pero no me pines ya que yo tampoco.

Dijo que FTP es una opción mucho mejor que HTTP para transferir archivos (grandes) a través de la red. Consideraría la opción de usar HTTP para eso.


Use el servidor Arivu para el servidor de backend de java gradle -> compile ''org.arivu: nioserver: 1.0.3'', tamaño del archivo sin restricción. Cualquier tamaño puede ser manejado.


Utilice HTML5 File API para cargar archivos grandes. que tiene el concepto de cortar, para que pueda cargar archivos grandes.

var reader= new FileReader(); reader.onload=function(e){ //do whatever you want with result } var blob = file.slice(startingByte, endindByte);//slicing file reader.readAsBinaryString(blob);

Tutorial de FileSystem

Tutorial de la API de archivos