Acceder Registrarme

Como mando un input de tipo file con jquery a un servlet


Por: Eduardo ruiz benites Publicado el: 2018-03-18 22:27:41 Pregunta cerrada

Hola, espero me puedan ayudar gracias.

Soy principiante y andaba practicando como registrar datos de una persona, he mandado con jquery (metodo $.post()) desde mi formulario informacion contenido en un json que lo traducia en mi servlet y lo leia como un bean para luego registrarlos hasta alli todo bien sin embargo se me presenta dificultad al querer mandar a mi servlet una imagen que lo guardo en un input de tipo file e visto como guardar en el servidor usando librerias upload pero pese a que hago todo en cuanto veo en video no puedo solucionar ya que no se como mandar un file con jquey a mi servlet.




Java JQuery Json

Usuario de (Perú)

Hola Oscar.

Tienes dos opciones... la primera es que envíes la imagen en base64 para lo que deberías convertir dicha imagen con JavaScript antes de enviarlo a través de la petición ajax; la segunda opción es enviar la imagen a través de un FormData de JavaScript el cual sólo debe ser asignado hacienod lectura de tu input de tipo file.

Lee sobre como convertir una imagen a base64 con JavaScript lo cual luego será sólo como enviar una imagen o la otra opción; lee como enviar datos mediante el FormData en una petición ajax.

Saludos.

  • 2018-03-18 22:31:35
  • Me gusta(1)
Usuario de (Perú)

Ambas opciones me permite mandar archivos de cualquier tamaño o hay alguna restriccion? cual me sugieres?

  • 2018-03-18 22:35:09
  • Me gusta(0)
Usuario de (Perú)

Si quieres enviar archivos regularmente grandes, sugiero que lo hagas a través del FormData, sin embargo; el limitante del envío no tiene que ver co el lengueje en si, recuerda ésto... debes configurar que el servidor soporte el tamaño que tú limites por envío en cada petición.

  • 2018-03-18 22:37:30
  • Me gusta(0)
Usuario de (Perú)

Gracias por la respuesta rapida, revisare sobre el tema. comentare si solucione o tengo dudas gracias.

  • 2018-03-18 22:43:15
  • Me gusta(1)

  • Debes estar logueado para realizar comentarios