Me gustaría guardar y recuperar archivos binarios de una base de datos mysql en una aplicación Electron. Estoy usando la biblioteca mysql2/promise para interactuar con mysql. Creé una base de blob binario en hexadecimal e intenté enviar a través de IPC a main.js, desde las páginas index.html y prerender.js. Sin embargo, cuando envío, da un error de que el objeto no se puede clonar. No estoy seguro de cómo hacer esto correctamente y estoy buscando orientación. A continuación se muestra el código parcial que he estado tratando de probar.
Main.js ipcMain.handle('saveBlob', async (event,data) => { const connection = await mysql.createConnection({ host: 'localhost', database: 'somedb', user: 'blah', password : 'blah', port : xxxx }); var parentId=1 var result = await connection.execute("INSERT INTO somedb.files (parentId, data) VALUES(?,?)", [parentId, data]); return result; }) prerender.js const { contextBridge, ipcRenderer } = require('electron'); contextBridge.exposeInMainWorld('electronAPI', { sendBlob: (ablob) => { ipcRenderer.invoke('saveBlob', ablob); } }) Index.html var blob = new Blob([byteArray], {type: "application/octet-stream"}); window.electronAPI.sendBlob(blob);