【问题标题】:Use CEF offline without appcache在没有 appcache 的情况下离线使用 CEF
【发布时间】:2015-11-09 20:18:13
【问题描述】:

我正在调查在一个新的桌面应用程序中使用CEF,我想在其中使用 HTML5/js 呈现 UI。但是,我不希望模型成为一个典型的 Web 应用程序,它只是在嵌入式浏览器中呈现(即从远程服务器获取资源,如网页)。基本上我想要一个桌面应用程序,它预先打包了呈现 UI 所需的所有 HTML 和脚本,并且完全脱机运行。

我的问题是:CEF 是否能够或多或少开箱即用地做到这一点?或者我是否需要编写一堆自定义代码来处理和呈现本地资源,或者嵌入本地 Web 服务器?一个简单的例子是为一个基本的计算器应用程序构建 UI 按钮和输出(尽管计划中的应用程序要复杂得多)。我将如何着手处理这个问题?

我也将Electron 视为一种可能的解决方案。看起来它更适合我想做的事情(使用 Web 技术渲染 UI,但不一定要连接到任何东西)。但是,我们有一些需要集成的遗留 c++ 库,我相信使用 CEF 比使用 Electron 更容易。

环顾四周,CEF 似乎支持所谓的“离线应用程序”的 appcache。但是,我对使用它持怀疑态度,因为它有 numerous problems。而且它看起来像appcache is dying,所以我宁愿不把自己绑在那艘正在下沉的船上。不幸的是,service worker 看起来也没有准备好迎接黄金时段。

【问题讨论】:

  • 有可能。您可以使用自定义方案工厂并自己提供资源(基本上将某种 rc://100 映射到 100.html 文件),或者加载 HTML 并在内存中提供它们。

标签: chromium-embedded html5-appcache electron offlineapps


【解决方案1】:

请参阅Request Handling 下的CEF General Usage 指南,了解处理自定义请求的两种支持方法。

https://bitbucket.org/chromiumembedded/cef/wiki/GeneralUsage.md#markdown-header-request-handling

您正在寻找的东西确实可以开箱即用并且相对容易实现。 cefclient 示例应用程序有工作示例。

https://bitbucket.org/chromiumembedded/cef/src/694b45717c971a0bb639f555b640d313fc15ccc8/tests/cefclient/?at=master

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-23
    • 1970-01-01
    • 1970-01-01
    • 2016-10-11
    • 1970-01-01
    • 2022-10-07
    • 1970-01-01
    相关资源
    最近更新 更多