Foro de elhacker.net

Programación => Programación General => Mensaje iniciado por: OssoH en 24 Febrero 2017, 13:45 pm



Título: Enviar imagen a servidor externo javascript
Publicado por: OssoH en 24 Febrero 2017, 13:45 pm
Quiero hacer un boton que al clickarlo suba una imagen que tenga situada en la misma carpeta.

Si lo hago con <input type="file" name="profile_pic" id="profile_pic" /> SI funciona, pero no quiero tener yo que seleccionar el fichero, sino que directamente 'ponga el nombre de la imagen. Por ejemplo 'prueba.jpg'

Lo he intentado sin exito con :
   var formData = new FormData();
    formData.append('file','prueba.jpg');

alguien tiene la solucion?

Gracias


Título: Re: Enviar imagen a servidor externo javascript
Publicado por: #!drvy en 24 Febrero 2017, 14:30 pm
No es posible. Javasript no tiene acceso al sistema de archivos directamente y mucho menos para operaciones de tratamiento de datos. Da igual que sea una imagen y que se supone que tiene que funcionar como un <img>.

Una alternativa es leer la imagen mediante New Image() o el FileReader, y enviarla en forma de base64 o parecido.

Saludos


Título: Re: Enviar imagen a servidor externo javascript
Publicado por: OssoH en 24 Febrero 2017, 15:48 pm
Entiendo...gracias.
También me sirve si le puedo indicar la url donde se encuentra la imagen pero no he encontrado la forma aún como se hace.

De momento, otra opción creo que es usar un canvas.
Estoy probando..

var formData = new FormData();
    var canvas = $('#myCanvas').get(0);
    var dataUrl = canvas.toDataURL("image/jpeg");
    var blob = dataURItoBlob(dataUrl);
    formData.append("file", blob, 'jose.jpg');