我正在将应用程序从 QtWebKit 升级到 QtWebEngine。该应用程序依赖于 WebKit 在关闭应用程序后没有保留 cookie,但 WebEngine 似乎默认保留它们。
我对Qt一点也不熟悉。我一直在浏览文档,但似乎找不到正确的 API 调用来删除它们。该应用程序只有一个简单的 QWebEngineView 用于前端。
我正在将应用程序从 QtWebKit 升级到 QtWebEngine。该应用程序依赖于 WebKit 在关闭应用程序后没有保留 cookie,但 WebEngine 似乎默认保留它们。
我对Qt一点也不熟悉。我一直在浏览文档,但似乎找不到正确的 API 调用来删除它们。该应用程序只有一个简单的 QWebEngineView 用于前端。
如果不需要更改 PersistentCookiesPolicy,而只需要清理 Cookies,则可以使用deleteAllCookies()
该类的方法QWebEngineCookieStore
。
所以你可以做这样的事情:
webEngineView->page()->profile()->cookieStore()->deleteAllCookies();
有QWebEngineProfile
你可以使用的类。
无效 QWebEngineProfile::setPersistentCookiesPolicy(QWebEngineProfile::PersistentCookiesPolicy newPersistentCookiesPolicy)
将持久性 cookie 的策略设置为 newPersistentCookiesPolicy。
所以你可以做这样的事情:
webEngineView->page()->profile()->setPersistentCookiesPolicy(QWebEngineProfile::NoPersistentCookies);