Mostrando entradas con la etiqueta envia mensajes. Mostrar todas las entradas
Mostrando entradas con la etiqueta envia mensajes. 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...