繁体   English   中英

在Electron app中的iframe中加载来自外部网站的本地图像

[英]Load local images from external site in iframe within Electron app

假设我有一个网站,我想在Electron应用程序中使用iframe或webview变成桌面应用程序。 我们还假设这个网站上有很多图像,我想在Electron应用程序中缓存,这样他们只需要下载一次这些图像。

有没有办法从iframe / webview中加载的远程站点访问那些本地文件(捆绑在Electron应用程序中)?

默认情况下电子缓存大部分的http请求,检查一下以了解它是如何工作的https://github.com/electron/electron/blob/master/docs/api/web-contents.md#contentsloadurlurl-options

有趣的东西https://medium.com/@philipp.schaechtele/asset-caching-with-service-worker-c40dcda43842

希望能帮助到你

不幸的是,没有一种非常简单的方法来完成这项工作。 但是,我们设法得到了一个似乎可以完成工作的轻微hacky系统设置:

  1. 将所有资产转换为base64数据URI,并以资产URL作为密钥保存在JSON文件中。
  2. 在iframe / webview内部,使用postMessageipc从应用程序请求这些资产。
  3. 接收该请求并将JSON对象发送回webview / iframe。
  4. 加载资产时,检查URL是否在对象中并使用base64数据URI; 否则,正常加载。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM