Mostrando entradas con la etiqueta sube archivos a drive. Mostrar todas las entradas
Mostrando entradas con la etiqueta sube archivos a drive. Mostrar todas las entradas

martes, 11 de octubre de 2022

API FTP con Google Drive

  A continuación se muestra una solución para crear una API Google Drive para almacenar y recuperar archivo desde tu carpetas de Google drive.

¿ Que necesitas para implementarlo ?

- Solo tener cuenta gmail

Video Solución:



Payload API FTP

trama envio documento:

{

    "op": "ftp_archivo",

    "archivo_name": "archivo1.pdf",

    "archivo_base64": ""

}

trama lectura documento:

{

    "op": "ftp_descargar",

    "archivo_name": "archivo1.pdf"

}

Código App Script

var folderurl = "ID_FOLDER";

function doPost(e){

  Logger.log("Funcion doPost Ingreso : la fecha y hora: " + new Date());

  var operacion = JSON.parse(e.postData.contents)

  var respuesta = "";

  if (operacion.op == "ftp_archivo"){

     var archivo_name = operacion.archivo_name;

     var archivo_type = "image/jpeg";

     if(archivo_name.includes(".pdf")){

       archivo_type="application/pdf";

     }else if(archivo_name.includes(".zip")){

       archivo_type="application/zip";

     }else if(archivo_name.includes(".xml")){

       archivo_type="application/xml";

     }    

     var archivo_base64 = operacion.archivo_base64;

     respuesta = almacenar(archivo_name,archivo_type,archivo_base64);

  }else if (operacion.op == "ftp_descargar"){

     var archivo_name = operacion.archivo_name;

     respuesta = descargar(archivo_name);

  } 

  return ContentService.createTextOutput(respuesta).setMimeType(ContentService.MimeType.JSON);

}

function descargar(archivo_name){

  

  var folder_ = DriveApp.getFolderById(folderurl); 

  var files_ = folder_.getFilesByName(archivo_name);

  var jo = {};

  jo.status = '1';

  jo.message = 'No existe el archivo'; 

  while (files_.hasNext()) {

    var archivo_=files_.next();          

    var encoded = Utilities.base64Encode(archivo_.getBlob().getBytes());

    jo.status = '0';

    jo.message = 'Existe el archivo'; 

    jo.archivo_base64 =encoded;

    existe = true;

  }     

  var result = JSON.stringify(jo); 

  return result;        

}

function almacenar(archivo_name,archivo_type,archivo_base64){

  

  var decoded = Utilities.base64Decode(archivo_base64);

  var image = Utilities.newBlob(decoded,archivo_type,archivo_name);

  var folder_ = DriveApp.getFolderById(folderurl); 

 // SE CREA EL ARCHIVO

  var file = folder_.createFile(image);

  var jo = {};

  jo.status = '0';

  jo.message = 'Exito';

  jo.urlpublica = "https://drive.google.com/uc?id="+file.getId();

  var result = JSON.stringify(jo); 

  return result;        

}





🚀 Crea tu Propio Sistema de Inventario y Úsalo desde tu Celular 📱

 📱📦 Crea tu Sistema de Inventario y úsalo desde tu celular. En este video muestro cómo desarrollar un sistema de inventario con escáner us...