QQuickWebEngineProfile 泛型
QQuickWebEngineProfile 泛型提供多个页面共享的网页引擎配置。更多...
头文件 | #include <QQuickWebEngineProfile> |
CMake | find_package(Qt6 REQUIRED COMPONENTS WebEngineQuick) target_link_libraries(mytarget PRIVATE Qt6::WebEngineQuick) |
qmake | QT += webenginequick |
由以下实例化 | WebEngineProfile |
继承 | QObject |
公共类型
枚举 | HttpCacheType { MemoryHttpCache, DiskHttpCache, NoCache } |
枚举 | PersistentCookiesPolicy { NoPersistentCookies, AllowPersistentCookies, ForcePersistentCookies } |
属性
|
|
公共函数
QQuickWebEngineProfile(QObject *parent = nullptr) | |
QString | cachePath() const |
void | clearHttpCache() |
QWebEngineClientCertificateStore * | clientCertificateStore() |
QWebEngineCookieStore * | cookieStore() const |
QString | downloadPath() const |
QString | httpAcceptLanguage() const |
int | httpCacheMaximumSize() const |
QQuickWebEngineProfile::HttpCacheType | httpCacheType() const |
QString | httpUserAgent() const |
void | installUrlSchemeHandler(const QByteArray &scheme, QWebEngineUrlSchemeHandler *handler) |
bool | isOffTheRecord() const |
bool | isPushServiceEnabled() const |
bool | isSpellCheckEnabled() const |
QQuickWebEngineProfile::PersistentCookiesPolicy | persistentCookiesPolicy() const |
QString | persistentStoragePath() const |
void | removeAllUrlSchemeHandlers() |
void | removeUrlScheme(const QByteArray &scheme) |
void | removeUrlSchemeHandler(QWebEngineUrlSchemeHandler *handler) |
void | setCachePath(const QString &path) |
void | setDownloadPath(const QString &path) |
void | setHttpAcceptLanguage(const QString &httpAcceptLanguage) |
void | setHttpCacheMaximumSize(int maxSize) |
void | setHttpCacheType(QQuickWebEngineProfile::HttpCacheType) |
void | setHttpUserAgent(const QString &userAgent) |
void | setOffTheRecord(bool offTheRecord) |
void | setPersistentCookiesPolicy(QQuickWebEngineProfile::PersistentCookiesPolicy) |
void | setPersistentStoragePath(const QString &path) |
void | setPushServiceEnabled(bool enable) |
void | setSpellCheckEnabled(bool enabled) |
void | setSpellCheckLanguages(const QStringList &languages) |
void | setStorageName(const QString &name) |
void | setUrlRequestInterceptor(QWebEngineUrlRequestInterceptor *interceptor) |
QStringList | spellCheckLanguages() const |
QString | storageName() const |
const QWebEngineUrlSchemeHandler * | urlSchemeHandler(const QByteArray &scheme) const |
QQuickWebEngineScriptCollection * | userScripts() const |
信号
void | cachePathChanged() |
(自6.7以来) void | clearHttpCacheCompleted() |
void | downloadFinished(QQuickWebEngineDownloadRequest *download) |
void | downloadPathChanged() |
void | downloadRequested(QQuickWebEngineDownloadRequest *download) |
void | httpAcceptLanguageChanged() |
void | httpCacheMaximumSizeChanged() |
void | httpCacheTypeChanged() |
void | httpUserAgentChanged() |
void | offTheRecordChanged() |
void | persistentCookiesPolicyChanged() |
void | persistentStoragePathChanged() |
void | presentNotification(QWebEngineNotification *notification) |
void | pushServiceEnabledChanged() |
void | spellCheckEnabledChanged() |
void | spellCheckLanguagesChanged() |
void | storageNameChanged() |
静态公共成员
QQuickWebEngineProfile * | defaultProfile() |
详细描述
Web引擎配置文件包含设置、脚本、持久cookie策略和由属于该配置文件的所有Web引擎页面共享的已访问链接列表。
访问链接的信息与持久cookie以及其他持久数据一起存储在由 storageName 属性确定的存储中。持久数据存储在由 persistentStoragePath 属性确定的子目录中,缓存存储在由 cachePath 属性确定的子目录中。 httpCacheType 属性描述了缓存的类型:内存中 或 磁盘上。如果只设置了 storageName 属性,则其他值将根据它自动生成。如果您手动指定了任何值,则应该在创建属于配置文件的任何页面之前执行此操作。
配置文件可以用来隔离页面。一个典型用例是为 离线浏览模式 设定的专用 离线配置文件。离线配置文件强制cookie、HTTP缓存和其他通常持久的数据仅存储在内存中。 offTheRecord 属性保留配置文件是否为离线状态的标志。
默认配置文件可以通过 defaultProfile() 访问。它是一个内置配置文件,所有未特别使用其他配置文件创建的网页都属于此。
可以通过C++中的QQuickWebEngineProfile类创建和访问WebEngineProfile实例,该类在C++中公开了更多功能。这允许Qt Quick应用程序拦截URL请求(QQuickWebEngineProfile::setRequestInterceptor)或注册自定义URL方案(QQuickWebEngineProfile::installUrlSchemeHandler)。
可以通过设置 spellCheckEnabled 属性来按配置文件启用拼写检查HTML表单字段,并可以通过使用 spellCheckLanguages 属性来设置用于拼写检查的当前语言。
成员类型文档
枚举 QQuickWebEngineProfile::HttpCacheType
此枚举描述了HTTP缓存类型
常量 | 值 | 描述 |
---|---|---|
QQuickWebEngineProfile::MemoryHttpCache | 0 | 使用内存缓存。这是如果设置了off-the-record 时的默认值。 |
QQuickWebEngineProfile::DiskHttpCache | 1 | 使用磁盘缓存。这是如果没有设置off-the-record 时的默认值。如果设置了off-the-record ,将回退到MemoryHttpCache 。 |
QQuickWebEngineProfile::NoCache | 2 | 禁用内存和磁盘缓存。(自Qt 5.7版添加) |
枚举 QQuickWebEngineProfile::PersistentCookiesPolicy
此枚举描述了cookie持久性的策略。
常量 | 值 | 描述 |
---|---|---|
QQuickWebEngineProfile::NoPersistentCookies | 0 | 会话和持久cookie都存储在内存中。这是如果设置了off-the-record 或没有可用的持久数据路径的情况下唯一可能的设置。 |
QQuickWebEngineProfile::AllowPersistentCookies | 1 | 标记为持久的cookie会被保存到磁盘上,并在从磁盘恢复。这是默认设置。 |
QQuickWebEngineProfile::ForcePersistentCookies | 2 | 会话和持久cookie都保存到和从磁盘恢复。 |
属性文档
cachePath : QString
存储配置文件缓存的位置的路径,特别是HTTP缓存。
默认情况下,缓存存储在QStandardPaths::writableLocation(QStandardPaths::CacheLocation)下的目录中,该目录使用storageName命名。
访问函数
QString | cachePath() const |
void | setCachePath(const QString &path') |
通知信号
void | cachePathChanged() |
[自 QtWebEngine 1.9 开始]
downloadPath : QString
存储下载文件的位置路径。
重写默认的下载位置路径,将其设置为path。
如果设置为空字符串,则恢复默认路径。
注意: 默认情况下,下载路径是QStandardPaths::DownloadLocation。
此属性自 QtWebEngine 1.9 起被引入。
访问函数
QString | downloadPath() const |
void | setDownloadPath(const QString &path') |
通知信号
void | downloadPathChanged() |
httpAcceptLanguage : QString
Accept-Language HTTP请求报头字段的值。
访问函数
QString | httpAcceptLanguage() const |
void | setHttpAcceptLanguage(const QString &httpAcceptLanguage') |
通知信号
void | httpAcceptLanguageChanged() |
httpCacheMaximumSize : int
HTTP缓存的 maximum 大小。如果 0
,则大小将由 QtWebEngine 自动控制。默认值是 0
。
访问函数
int | httpCacheMaximumSize() const |
void | setHttpCacheMaximumSize(int maxSize) |
通知信号
void | httpCacheMaximumSizeChanged() |
另请参阅 httpCacheType.
httpCacheType : HttpCacheType
这个枚举定义了 HTTP 缓存的类型。
如果配置文件是“离线”的或未设置 storageName,则返回 MemoryHttpCache。
访问函数
QQuickWebEngineProfile::HttpCacheType | httpCacheType() const |
void | setHttpCacheType(QQuickWebEngineProfile::HttpCacheType) |
通知信号
void | httpCacheTypeChanged() |
httpUserAgent : QString
用于识别浏览器的用户代理字符串。
访问函数
QString | httpUserAgent() const |
void | setHttpUserAgent(const QString &userAgent') |
通知信号
void | httpUserAgentChanged() |
[自 QtWebEngine 6.5 开始]
isPushServiceEnabled : bool
是否启用推送消息服务。
注意: 默认情况下,推送消息服务是禁用的。
注意: Qt WebEngine 使用 Firebase Cloud Messaging (FCM) 作为浏览器推送服务。因此,所有推送消息将通过 Google 推送服务和相应的服务器。
此属性自 QtWebEngine 6.5 起被引入。
访问函数
bool | isPushServiceEnabled() const |
void | setPushServiceEnabled(bool enable) |
通知信号
void | pushServiceEnabledChanged() |
offTheRecord : bool
是否将网络引擎配置为离线。脱机配置将强制将 cookies、HTTP 缓存和其他通常持久数据只存储在内存中。默认情况下,配置是脱机的。
访问函数
bool | isOffTheRecord() const |
void | setOffTheRecord(bool offTheRecord) |
通知信号
void | offTheRecordChanged() |
persistentCookiesPolicy : PersistentCookiesPolicy
此枚举描述了Cookie持久性的策略。如果配置文件是离线模式的,则返回NoPersistentCookies。
访问函数
QQuickWebEngineProfile::PersistentCookiesPolicy | persistentCookiesPolicy() const |
void | setPersistentCookiesPolicy(QQuickWebEngineProfile::PersistentCookiesPolicy) |
通知信号
void | persistentCookiesPolicyChanged() |
persistentStoragePath : QString
此路径指定了存储浏览器和网页内容的持久数据的目录。持久数据包括持久Cookie、HTML5本地下存储和访问过的链接。
默认情况下,存储位于QStandardPaths::writableLocation(QStandardPaths::AppDataLocation)下,在一个使用storageName命名的目录中。
访问函数
QString | persistentStoragePath() const |
void | setPersistentStoragePath(const QString &path) |
通知信号
void | persistentStoragePathChanged() |
[since QtWebEngine 1.4]
spellCheckEnabled : bool
此属性表示是否启用了网络引擎的拼写检查器。
此属性自QtWebEngine 1.4版本开始引入。
访问函数
bool | isSpellCheckEnabled() const |
void | setSpellCheckEnabled(bool enabled) |
通知信号
void | spellCheckEnabledChanged() |
[since QtWebEngine 1.4]
spellCheckLanguages : QStringList
此属性包含拼写检查器使用的语言。
此属性自QtWebEngine 1.4版本开始引入。
访问函数
QStringList | spellCheckLanguages() const |
void | setSpellCheckLanguages(const QStringList &languages) |
通知信号
void | spellCheckLanguagesChanged() |
storageName : QString
用于创建每个使用磁盘存储持久数据和缓存的配置文件的单独子目录的存储名称。
访问函数
QString | storageName() const |
void | setStorageName(const QString &name) |
通知信号
void | storageNameChanged() |
成员函数文档
QQuickWebEngineProfile::QQuickWebEngineProfile(QObject *parent = nullptr)
使用父对象parent构造一个新的配置文件。
[invokable]
void QQuickWebEngineProfile::clearHttpCache()
移除配置文件的缓存条目。
注意:在进行清除操作时,请确保不要开始新的导航或对配置文件执行任何操作。clearHttpCacheCompleted() 信号会在完成时通知。
注意:此函数可以通过元对象系统从QML调用的方式调用。有关详细信息,请参阅Q_INVOKABLE。
参见WebEngineProfile::clearHttpCache() 和 clearHttpCacheCompleted。
[signal, since 6.7]
void QQuickWebEngineProfile::clearHttpCacheCompleted()
当clearHttpCache()操作完成时,会发出此信号。
此函数自Qt 6.7版本开始。
QWebEngineClientCertificateStore *QQuickWebEngineProfile::clientCertificateStore()
返回该配置文件的客户端证书存储。
QWebEngineCookieStore *QQuickWebEngineProfile::cookieStore() const
返回该配置文件的Cookie存储。
[静态]
QQuickWebEngineProfile *QQuickWebEngineProfile::defaultProfile()
返回默认配置文件。
默认配置文件为无记录模式。
另请参阅storageName。
[信号]
void QQuickWebEngineProfile::downloadFinished(QQuickWebEngineDownloadRequest *download)
每当下载停止(因为完成、取消或中断,例如因为丢失连接)时都会发出此信号。 download 参数包含已完成下载对象的当前状态。
注意:要从C++的 download 使用 QWebEngineDownloadRequest
[信号]
void QQuickWebEngineProfile::downloadRequested(QQuickWebEngineDownloadRequest *download)
每当触发了下载时都会发出此信号。 download 参数包含下载的状态。下载必须使用 QWebEngineDownloadRequest::accept()
明确接受,否则它将默认取消。下载项目由配置文件归档。如果它没有被接受,它将在信号发出后立即被删除。此信号不能与队列连接一起使用。
注意:要从C++的 download 使用 QWebEngineDownloadRequest
void QQuickWebEngineProfile::installUrlSchemeHandler(const QByteArray &scheme, QWebEngineUrlSchemeHandler *handler)
在配置文件中为自定义URL方案 scheme 注册处理器 handler。
必须在应用程序启动时首次使用 QWebEngineUrlScheme::registerScheme 注册方案。
[信号]
void QQuickWebEngineProfile::presentNotification(QWebEngineNotification *notification)
每当有新的用户通知时都会发出此信号。 notification 参数包含可查询数据和与之交互的 QWebEngineNotification 实例。
另请参阅WebEngineProfile::presentNotification。
void QQuickWebEngineProfile::removeAllUrlSchemeHandlers()
从配置文件中删除所有已安装的自定义URL方案处理器。
void QQuickWebEngineProfile::removeUrlScheme(const QByteArray &scheme)
从配置文件中删除自定义URL方案 scheme。
void QQuickWebEngineProfile::removeUrlSchemeHandler(QWebEngineUrlSchemeHandler *handler)
从配置文件中删除自定义URL方案处理器 handler。
参见 removeUrlScheme。
void QQuickWebEngineProfile::setUrlRequestInterceptor(QWebEngineUrlRequestInterceptor *interceptor)
注册一个请求拦截器单例 interceptor 以拦截URL请求。
配置文件不会获取该指针的所有权。
参见 QWebEngineUrlRequestInfo 和 QWebEngineUrlRequestInterceptor。
QStringList QQuickWebEngineProfile::spellCheckLanguages() const
返回拼写检查器使用的语言列表。
注意: spellCheckLanguages属性的获取函数。
const QWebEngineUrlSchemeHandler *QQuickWebEngineProfile::urlSchemeHandler(const QByteArray &scheme) const
返回为URL方案 scheme 注册的自定义URL方案处理器。
© 2024 The Qt Company Ltd. 文档的贡献是各自所有者的版权。本提供的文档是在自由软件基金会发布的GNU自由文档许可版本1.3条款下授予的。Qt及其相关标志是The Qt Company Ltd.在芬兰和/或其他国家的商标。所有其他商标均为其各自所有者的财产。