如何使用简单的基于webview的Chrome自助服务终端应用程序来使用代理配置?

时间:2015-09-09 19:16:40

标签: webview google-chrome-app http-proxy kiosk kiosk-mode

我创建了一个非常简单的基于webview的Chrome应用程序 - 它几乎与Google create a simple kiosk app by using a text editor完全相同,但更简单的是它没有重置或任何其他按钮只是我的网页内容。

这在政策或手动提供的大多数普通信息亭情况下都很有用,但是在实时环境中我需要部署此应用程序我是一个非常严格的防火墙,只有使用HTTP代理(Squid)才能访问Internet。在这种情况下,webview内容永远不会显示,并且应用程序似乎卡在初始化阶段。

我可以访问代理日志,并且可以看到使用代理从未请求过webview的内容 - 对Google服务器的其他HTTPS请求似乎正常工作正常。通过部署网络嗅探器,我可以看到防火墙正在丢弃的直接请求正在尝试访问webview内容。

我想要的配置是使用自动机制http://wpad/wpad.dat在CrOS下配置代理,但我尝试手动配置,通过托管策略以及本地提供此配置,所有可能的组合和我的结果都看起来都一样;自助服务终端应用中的webview似乎忽略了系统配置的代理。

如果在受限制的环境中使用了kiosk_enabled应用程序的Kiosk模式,则webview会正确选择已登录用户的代理设置。只有在适当的信息亭模式下,webview才会忽略代理设置。

我的研究似乎表明,webview不能通过API手动配置其代理,尽管似乎有Chromium issue (172285)请求这个;和other kiosk apps exhibit the same issue在我受限制的环境中,包括Google's own Sign Builder app。所以也许我试图做的事情是不可能的(一个错误?)虽然我没有找到任何文件来暗示这一点。我真的希望有一些解决方法可以使webview与系统代理设置一起工作,并且阅读此内容的人知道并愿意分享它。

我已经成功实现了自己的hacky解决方法,因为我可以完全控制代理,如果不是防火墙,它为我的kiosk应用程序的webview访问设置了一个反向代理配置,因此它出现了webview需要无代理,因为它看起来像是防火墙局域网的本地站点。这不是一个非常通用的解决方案,我确信会有其他人没有这个选项。

提前感谢任何建议或反馈,
干杯
/担

0 个答案:

没有答案