Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

440
Visualizações
ReferenceError: el archivo no está definido - express

Estoy tratando de convertir una cadena base64 en un archivo de imagen y pasarlo a Firebase a través de Express.

Todo funciona bien en el front-end, excepto esta parte:

 const convertBase64ToFile = (base64String, fileName) => { let arr = base64String.split(','); let mime = arr[0].match(/:(.*?);/)[1]; let bstr = atob(arr[1]); let n = bstr.length; let uint8Array = new Uint8Array(n); while (n--) { uint8Array[n] = bstr.charCodeAt(n); } const file = new File([uint8Array], fileName, { type: mime }); /// getting Error in this line return file }

¿Qué biblioteca tengo que importar?

Error:

 const file = new File([uint8Array], fileName, { type: mime }); /// getting Error in this line ^ ReferenceError: File is not defined at convertBase64ToFile (C:\Users\rahto\devel\new\maissaudeapi\api\firestore\write.js:19:16) at conversor (C:\Users\rahto\devel\new\maissaudeapi\api\firestore\write.js:33:16) at C:\Users\rahto\devel\new\maissaudeapi\mainServer.js:31:21 at Layer.handle [as handle_request] (C:\Users\rahto\devel\new\maissaudeapi\node_modules\express\lib\router\layer.js:95:5) at next (C:\Users\rahto\devel\new\maissaudeapi\node_modules\express\lib\router\route.js:144:13) at Route.dispatch (C:\Users\rahto\devel\new\maissaudeapi\node_modules\express\lib\router\route.js:114:3) at Layer.handle [as handle_request] (C:\Users\rahto\devel\new\maissaudeapi\node_modules\express\lib\router\layer.js:95:5) at C:\Users\rahto\devel\new\maissaudeapi\node_modules\express\lib\router\index.js:284:15 at Function.process_params (C:\Users\rahto\devel\new\maissaudeapi\node_modules\express\lib\router\index.js:346:12) at next (C:\Users\rahto\devel\new\maissaudeapi\node_modules\express\lib\router\index.js:280:10) Node.js v18.6.0 [nodemon] app crashed - waiting for file changes before starting...

Entonces, cambié a esto:

 const convertBase64ToFile = (base64String, fileName) => { let arr = base64String.split(','); let mime = arr[0].match(/:(.*?);/)[1]; let bstr = atob(arr[1]); let n = bstr.length; let uint8Array = new Uint8Array(n); while (n--) { uint8Array[n] = bstr.charCodeAt(n); } const file = fs.writeFileSync(fileName, uint8Array) let fiz = fs.readFileSync(fileName, file); // const file = new File([uint8Array], fileName, { type: mime }); return fiz }

Y obtuve este error:

 C:\Users\rahto\devel\new\maissaudeapi\node_modules\@firebase\storage\dist\index.node.cjs.js:3036 const newPath = child(ref._location.path, childPath); ^ TypeError: Cannot read properties of undefined (reading 'path')
about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Parece que está utilizando el tiempo de ejecución del node . Puede usar el módulo fs para acceder al sistema de archivos.

 fs.writeFile( file, data, options, callback )

Parámetros: Este método acepta cuatro parámetros como se mencionó anteriormente y se describe a continuación:

  • archivo: Es una cadena, Buffer, URL o entero de descripción de archivo que denota la ruta del archivo donde se tiene que escribir. El uso de un descriptor de archivo hará que se comporte de manera similar al método fs.write().
  • data: Es una cadena, Buffer, TypedArray o DataView que se escribirá en el archivo.
  • opciones: es una cadena u objeto que se puede usar para especificar parámetros opcionales que afectarán la salida. Tiene tres parámetros opcionales:
  • codificación: Es un valor de cadena que especifica la codificación del archivo. El valor predeterminado es 'utf8'.
  • modo: Es un valor entero que especifica el modo del archivo. El valor predeterminado es 0o666.
  • bandera: es un valor de cadena que especifica la bandera utilizada al escribir en el archivo. El valor predeterminado es 'w'.
  • callback: Es la función que sería llamada cuando se ejecuta el método.
    • err: Es un error que se lanzaría si falla la operación.

Uso:

 var fs = require('fs'); fs.writeFile('file.txt', 'Hello content!', function (err) { if (err) throw err; console.log('Saved!'); });

También consulte más aquí y aquí para ver el uso. Y también consulte aquí para obtener documentación.

about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda