Send files (Docx, pdf and others) from ionic to a server, is it possible?

Good day, I am trying to send files (PDF, Docx and others) to a server but I have not yet been able to, I do not find much information about it, I already managed to do it with images. I would like to know if it is possible to do it with files?

I appreciate any help you can give me

regards

Hello,
yes it is possible. Tecnically is there no difference. Have you access to the routine that process your upload?

Best regards, anna-liebt

1 Like

Good morning Anna, thank you very much for your answer, I was trying and finally I could achieve it, this is the code that I use if someone is of help.

uploadresume()
{
this.fileChooser.open()
.then(uri =>
{
/* ============== inicio file chooser ============== */

  /*=====  verificamos la extension del archivo ========*/
  this.filePath.resolveNativePath(uri)
  .then((filePath) => { 
    let path = filePath.substring(0, filePath.lastIndexOf('/')); // ruta archivo
    let file = filePath.substring(filePath.lastIndexOf('/')+1, filePath.length); // archivo
    
    let archivo = file.split("."); 
    let nombreArchivo = archivo[0];
    let extensionArchivo = archivo[1];

      /* Extensiones validas */
    if(extensionArchivo=="jpg" ||  extensionArchivo=="pdf" || 
       extensionArchivo=="docx" || extensionArchivo=="xls" || 
       extensionArchivo=="zip" ||  extensionArchivo=="mp4" || 
       extensionArchivo=="mp3"
       )
      {  

     /*================ cargamos el archivo =============== */
      var archivoUpload ='scripts/registro_upload.php';
      var url = GlobalProvider.baseUrlApi+archivoUpload;

      /* asignamos un nombre al archivo */
       var fecha = new Date();
       var milisegundos = fecha.getTime();
       var nuevoNombreArchivo = "FILE_NEO_"+ milisegundos + "." + extensionArchivo ;
      /* asignamos un nombre al archivo */

      const fileTransfer: FileTransferObject = this.transfer.create();
      let options: FileUploadOptions = {
      fileKey: 'txtFile',
      fileName: nuevoNombreArchivo,
      headers: {},
      params: {"app_key":"Neogestion"},
      chunkedMode : false,
      mimeType: "multipart/form-data"
      }
      fileTransfer.upload(uri, url, options)
      .then((data) => {
      // success
      alert("success"+JSON.stringify(data));
       }, (err) => {
      // error
       alert("error"+JSON.stringify(err));
       });
      /*================ cargamos el archivo =============== */
    }
  }, (err) => {alert("error"+JSON.stringify(err));})
  /*=====  verificamos la extension del archivo ========*/

  /* ============== fin filechooser ============== */
})
.catch(e => console.log(e));

}

=====================================================================
registro_upload.php

<?php print_r($_FILES); /* ======== recibimos los datos del archivo =============== */ $nombreArchivo= $_FILES['txtFile']['name']; $nombreTemporal = $_FILES['txtFile']['tmp_name']; /* ======== recibimos los datos del archivo =============== */ $ruta = '/carpeta/'; if (!file_exists($ruta)) { mkdir($ruta, 0777, true);} //crea la carpeta en caso de no existir $archivoRenombrado=$ruta.$nombreArchivo; if(isset($archivoRenombrado)) { if(!empty($nombreArchivo)){ if(move_uploaded_file($nombreTemporal,$archivoRenombrado)) { } } } ?>