Qt5.7文档翻译:QWebEngineProfile类,QWebEngineProfile Class
QWebEngineProfile类,提供了一个供多个页面共享的web-engine配置档(profile)。详细说明……
头文件: |
#include <QWebEngineProfile> |
自此版本开始引入: |
Qt 5.5 |
继承: |
QWebEngineProfile类,提供了一个供多个页面共享的web engine配置档(profile)。
QWebEngineProfile中包含了一些设置信息、脚本、持久化小甜饼(cookie)策略和历史信息,它们是由所有属于这个配置档的web engine网页所共享的。
从属于同一个配置档的所有页面,都共享同一个QWebEngineSettings 实例,这个实例可通过settings()方法来获取到。类似地,通过scripts()方法,可访问到一个共享的QWebEngineScriptCollection 实例。
已访问过的链接、持久化的小甜饼和其它的持久化数据,都放置在一个存储对象中,可通过persistentStoragePath()来访问。对于缓存,可对其进行清空链接数据操作,具体就是,clearVisitedLinks()或clearAllVisitedLinks()。PersistentCookiesPolicy,控制的是,会话及持久化小甜饼数据,是否要向内存或硬盘保存并在日后恢复。
配置档,可用来将不同的页面互相隔离。一个典型的用法就是,创建一个不被记录的配置档,以用于隐私浏览模式。使用QWebEngineProfile(),并且不定义存储名字,就会构造出一个不被记录的配置档,它不会向本地机器上写入记录文件,不会接受持久化数据及缓存。可使用isOffTheRecord()方法来检查,某个配置档是不是不会被记录的。
有一个默认配置档,可通过defaultProfile()来访问。它是内置的,所有那些未明确创建为从属于其它配置档的网页,都是属于该默认配置档。
实现QWebEngineUrlRequestInterceptor 接口,再使用setRequestInterceptor()来将它注册到某个配置档上去,就可以在URL 请求(QWebEngineUrlRequestInfo)到达Chromium 的网络栈之前对它们进行拦截、阻止及修改。
可使用installUrlSchemeHandler()来将一个QWebEngineUrlSchemeHandler 注册到某个配置档中去,以加入对自定义URL模式的支持。之后,针对该种类型网址模式的请求,会被转发到QWebEngineUrlSchemeHandler::requestStarted(),并且以 QWebEngineUrlRequestJob 对象的形式表示。
这个枚举,描述的是,小甜饼(cookie)持久化的策略:
常量 |
值 |
说明 |
QWebEngineProfile::NoPersistentCookies |
0 |
会话和持久化的小甜饼都会被存储在内存中。如果启用了不记录功能( off-the-record ),或者没有可用的持久化数据路径,那么,这是唯一可用的选项。 |
QWebEngineProfile::AllowPersistentCookies |
1 |
那些被标记为持久化的小甜饼,会被保存到硬盘,并在日后恢复,而会话中的小甜饼,会被保存到硬盘,但只用于在崩溃后恢复。这是默认设置。 |
QWebEngineProfile::ForcePersistentCookies |
2 |
会话小甜饼和持久化小甜饼,都会被保存到硬盘,并在日后恢复。 |
返回用于缓存的路径。
默认情况下,这是QStandardPaths::writableLocation(QStandardPaths::CacheLocation)下面的一个与存储名字相关的目录。
参考 setCachePath()、storageName()和QStandardPaths::writableLocation()。
返回这个配置档中使用的小甜饼存储。
这个函数是从Qt 5.6 开始引入的。
返回默认的配置档。
默认配置档会使用存储名字"Default"。
参考 storageName()。
每当有一个下载请求被触发时,就会发射这个信号。download 参数中保存着该下载事项的状态。对于该download,妳或者要使用QWebEngineDownloadItem::accept来显式地接受它,或者,它在默认情况下会被取消。该下载条目的亲代对象会被设置为此配置档,但是,如果它没有被接受的话,则会在信号发射之后立即被删除。这个信号不能用于队列式的连接。
此函数是从Qt 5.5 开始引入的。
返回在HTTP 中发送的用来标识该浏览器的user-agent 字符串。
参考 setHttpUserAgent()。
将针对自定义URL 模式 scheme 的处理器 handler ,注册到这个配置档中。
这个函数是从Qt 5.6 开始引入的。
返回当前用于对小甜饼进行持久化的策略。
如果当前配置 档是不被记录的(off-the-record),那么会返回 NoPersistentCookies 。
参考
setPersistentCookiesPolicy
()
。
返回由此配置档所使用的所有脚本的集合。
参考 QWebEngineScriptCollection 、 QWebEngineScript 和 QWebEnginePage::scripts ()。
覆盖掉用于磁盘缓存的默认路径。
如果设置为空(null)字符串,则,默认路径会被恢复。
参考 cachePath()。
覆盖掉默认的用户代理(user-agent)字符串,将它设置为userAgent。
参考 httpUserAgent()。
将持久化小甜饼的策略设置成 newPersistentCookiesPolicy 。
参考 persistentCookiesPolicy () 。
void
QWebEngineProfile::
setRequestInterceptor
(
QWebEngineUrlRequestInterceptor
*
interceptor
)
注册一个请求拦截器单实例 interceptor ,用于拦截URL 请求。
这个配置档并不夺取该指针的所有权。
这个函数是从Qt 5.6 开始引入的。
未知美人
HxLauncher: Launch Android applications by voice commands