什么HTML5运行时环境(渲染器shell)不生成任何后台网络I / O?

时间:2018-06-02 16:07:02

标签: chromium-embedded kiosk kiosk-mode nw.js qtwebengine

我需要整合一个漂亮的界面/ UX,它将作为主要shell / UI在特定配置的硬件上运行全屏。

HTML5 / CSS / JS将是绝对最简单的设计路径;我没有任何需要坚如磐石的60fps帧率或类似的高性能要求的东西,因此HTML的实时可重载性使其成为快速开发的赢家。 (另外,我正在使用Linux,所以我知道我的下一个(真正的)替代方案是Qt,也许是使用Python。但迭代速度不会那么快。)

由于这将是嵌入式/设备类型设置,我不需要Electron的“一键式运行”打包性质;实际上,我更喜欢在后台运行的本地应用程序/ Web服务器的更传统的方法。

所以,我需要的是一个基本的无头浏览器,在打开机器的时间内显示全屏。

那可能是Chrome,但这就是问题所在。可以从相关设备访问通用Internet,但只有我自己的后端进程才能使用它。我希望渲染器不能直接访问网络。

我了解Chrom {e,ium}与Google联系进行遥测和指标跟踪,以及获取安全浏览列表等等 - 并且无法关闭此行为,以确保大多数网络用户不会结束了(在“整个互联网”的背景下)可以说是疯狂的安全默认值。

但是对于我的用例,这种行为毫无意义,因为我只会访问127.0.0.1。我没有必要在这个I / O上浪费带宽;正在努力在后台更新这些数据是有效的浪费。

我目前想知道要部署哪个渲染器解决方案,并权衡NW.js,QtWebEngine和Electron(按此顺序)。我特别喜欢http://wiki.qt.io/QtWebEngine中的以下内容:

  

与Google平台对话的辅助服务已被删除

如果我知道NW.js做了同样的事情,那将是一个嘘声,我会做出选择,但我不确定在哪里看。

努力建立一个简单的QtWebEngine自助服务终端shell是一个好主意,NW.js是资源有效的,还是有其他我没有想过的选择?

我过去曾尝试过CEF;它似乎有点笨重,或者至少是演示shell(我不能重新编译它)。也许这正是我正在寻找的并且没有意识到的?

0 个答案:

没有答案