Chromium 在信息亭模式下打开 file:// url,但记住 cookie

Chromium 在信息亭模式下打开 file:// url,但记住 cookie

我住在一个互联网不稳定的国家。如果我让 Chromium 以信息亭模式启动,并且没有互联网,它会显示一个空白页,并且永远不会再次尝试加载它(如果互联网在启动时可用,但在初始启动后断线,那么它会稍后重试)。

为了加载我的网站,我会加载一个本地网页,然后它会 ping 一个通用 API 来查明互联网是否已启动。一旦确认互联网已启动并运行,我就会加载所需的页面。该网站要求在重新启动之间保存 cookie。

但是我的测试表明,如果我打开了 kiosk 模式,并在 a 处打开了 chromium file://url...,那么它就不会记住 cookie。如果我更改为实际的 url,那么它会记住 cookie。似乎我只能使用 kiosk 模式,或者不使用互联网页面加载器,如何同时获得两者?

以下是我当前的命令(已格式化以便于阅读):

chromium-browser 
    --kiosk 
    --disable-session-crashed-bubble 
    --disable-infobars 
    --user-data-dir=/home/pi/browser/ 
    file:///home/pi/my_page_loader.html?fwd_url=https://www.mywebsite.com/

如何以 Kiosk 模式启动 Chrome 并加载文件 URL,并记住给定域或任何域的 cookie。

答案1

最后,不需要转发到所需的页面,而是可以在 JS 中调用window.close()关闭浏览器,然后继续执行脚本,再次启动浏览器,但这次直接在 URL 上启动,以便存储 cookie:

chromium-browser --kiosk "file:///home/pi/my_page_loader.html?ping_url=https://www.myproject.com"
chromium-browser --kiosk --user-data-dir=/home/pi/kiosk/ "https://www.myproject.com"

相关内容