sql >> Base de Datos >  >> NoSQL >> MongoDB

¿Cómo descargar un archivo almacenado con GridFS y devuelto con GraphQL en React/Javascript Client?

Lo que hice fue convertir el archivo en una cadena base64 (pregunta relacionada ). Luego devuelva la cadena en el resolver.

const file_buffer = fs.readFileSync(filepath);
const contents_in_base64 = file_buffer.toString('base64');
return contents_in_base64;

Alternativamente, si no tiene acceso al archivo igual que la pregunta original, puede

chunk.data.toString('base64')); 

Luego, en el front-end, simplemente coloco la base64 en una etiqueta de anclaje (pregunta relacionada ).

<a download={`${filename}.pdf`} href={`data:application/pdf;base64,${base64pdf}`} title='Download pdf document' />