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

214
Visualizações
Electron + Angular = ¿no hay archivos locales?

Mi problema es difícil de explicar, pero lo intentaré: tengo un error de electrones. Not allowed to load local resource cuando intento reproducir un archivo mp3 desde el directorio de la aplicación.

Eso sucede porque estoy usando Webpack para desarrollo y servidor Express para producción para ejecutar mis aplicaciones (Express se usa debido a algunas funciones de enrutamiento angular).

Esto es parte de mi electron-main.js -

 function createWindow() { win = new BrowserWindow({ width: 1500, height: 900, resizable: true, center: true, autoHideMenuBar: true, icon: path.join(__dirname, 'static', 'note.ico') }); if (DEBUG) { // Loading from Webpack win.loadURL(`http://localhost:4200`); win.webContents.openDevTools(); } else { // Loading from Express-server const server = require("../server"); win.loadURL(`http://localhost:3333`); }

servidor.js

 let path = require('path'); let express = require('express'); let app = express(); app.use(express.static(path.join(__dirname, 'dist'))); app.get('/', function (req, res) { res.sendFile(path.join(__dirname, 'dist', 'index.html')); }); app.listen(3333);

Pero cuando traté de establecer

 win.loadURL(url.format({ pathname: path.join(__dirname, 'index.html'), protocol: 'file:', slashes: true }));

Tengo mi reproducción de mp3 .

Entonces entiendo que solo se puede acceder a los archivos locales cuando protocol: 'file:' , no http: la estructura de la aplicación debe ser similar -

 (root folder) --app.exe (whatever) --mp3 --1.mp3 --2.mp3 --3.mp3 ...

¿Hay una solución? ¿Tal vez pueda usar Express para obtener mis archivos?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

La única solución que he encontrado es crear una ventana oculta adicional usando file: protocolo como este

 hiddenWindow = new BrowserWindow({ show: false }); hiddenWindow.loadURL(url.format({ pathname: path.join(__dirname, 'hidden.html'), protocol: 'file:', slashes: true }));

e inicie sus funciones usando ipcRenderer e ipcMain .

over 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