Estoy buscando la mejor manera de enviar archivos de imagen a mi servidor usando Apollo Express y Node. Obtener la información allí no parece ser un problema, convierto el objeto en una cadena, pero no puedo encontrar la forma de volver a convertirlo en un objeto de archivo normal para almacenarlo.
Lo que tengo hasta ahora;
JS - let buffer = await toBase64(file);A través del servidor Apollo..
Node - let buffer = Buffer.from(args.image, 'base64');Esto me da un búfer. No estoy seguro de cómo proceder con NodeJS para volver a convertir esto en un objeto de archivo.
Gracias
Espero que esto sea útil para ti.
const file = new File([ new Blob(["decoded_base64_String"]) ], "output_file_name");Puede usar uno de los varios métodos write o writeFile que aceptan un Buffer .
const fs = require("fs"); let buffer = Buffer.from( "iVBORw0KGgoAAAANSUhEUgAAAAgAAAAGCAIAAABxZ0isAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAQSURBVBhXY/iPAwygxP//AAjcj3EdtT3BAAAAAElFTkSuQmCC", "base64" ); fs.writeFile("pic.png", buffer, (err) => { if (err) throw err; console.log("The file has been saved!"); });