有没有办法在 Electron 中将本地文件加载到 HTML 中?获取 ERR_UNKNOWN_URL_SCHEME

par*_*yse 7 html5-audio electron

我有一个 Electron 应用程序,它试图将本地音频文件加载到 HTML5<audio>元素中。路径本身很好file:///../song.mp3,我已经设置webSecurityfalse,但我仍然得到Failed to load resource: net::ERR_UNKNOWN_URL_SCHEME. 由于同样的错误,如果我复制地址并将其粘贴到我的浏览器中,我会得到正确的文件。

我是否需要更改任何其他设置才能使其正常工作?

珍惜你的时间

M. *_*çın 2

我认为这是一个错误。文件的 URL 方案未启用为 URL 方案。

您可以在以下位置使用以下代码app.on('ready'....

protocol.registerFileProtocol('file', (request, cb) => {
    const url = request.url.replace('file:///', '')
    const decodedUrl = decodeURI(url)
    try {
      return cb(decodedUrl)
    } catch (error) {
      console.error('ERROR: registerLocalResourceProtocol: Could not get file path:', error)
    }
  })
Run Code Online (Sandbox Code Playgroud)

它将被修复