Класс QQuickWebEngineProfile
Класс QQuickWebEngineProfile предоставляет профиль веб-движка, используемый несколькими страницами. Подробнее...
| Заголовок: | #include <QQuickWebEngineProfile> |
| С тех пор: | Qt 5.6 |
| Инициализируется: | WebEngineProfile |
| Наследует: | QObject |
Этот класс был представлен в Qt 5.6.
Типы публичного доступа
| перечисление | HttpCacheType { КэшHttpВПамять, КэшHttpНаДиск, НетКэша } |
| перечисление | PersistentCookiesPolicy { НетПостоянныхКуки, РазрешитьПостоянныеКуки, ВынудитьПостоянныеКуки } |
Свойства
|
|
Публичные функции
| QQuickWebEngineProfile(QObject *parent = Q_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 | isSpellCheckEnabled() const |
| bool | isUsedForGlobalCertificateVerification() 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 | setSpellCheckEnabled(bool enabled) |
| void | setSpellCheckLanguages(const QStringList &languages) |
| void | setStorageName(const QString &name) |
| void | setUrlRequestInterceptor(QWebEngineUrlRequestInterceptor *interceptor) |
| void | setUseForGlobalCertificateVerification(bool b) |
| QStringList | spellCheckLanguages() const |
| QString | storageName() const |
| const QWebEngineUrlSchemeHandler * | urlSchemeHandler(const QByteArray &scheme) const |
| QQmlListProperty<QQuickWebEngineScript> | userScripts() |
Сигналы
| void | cachePathChanged() |
| void | downloadFinished(QQuickWebEngineDownloadItem *download) |
| void | downloadPathChanged() |
| void | downloadRequested(QQuickWebEngineDownloadItem *download) |
| void | httpAcceptLanguageChanged() |
| void | httpCacheMaximumSizeChanged() |
| void | httpCacheTypeChanged() |
| void | httpUserAgentChanged() |
| void | offTheRecordChanged() |
| void | persistentCookiesPolicyChanged() |
| void | persistentStoragePathChanged() |
| void | presentNotification(QWebEngineNotification *notification) |
| void | spellCheckEnabledChanged() |
| void | spellCheckLanguagesChanged() |
| void | storageNameChanged() |
| void | useForGlobalCertificateVerificationChanged() |
Статические публичные члены
| QQuickWebEngineProfile * | defaultProfile() |
Подробное описание
Профиль веб-движка содержит настройки, скрипты, политику сохранения cookie и список посещённых ссылок, общих для всех страниц веб-движка, принадлежащих данному профилю.
Информация о посещённых ссылках хранится вместе с постоянными cookie и другими постоянными данными в хранилище, определяемом свойством storageName. Постоянные данные хранятся в подкаталоге, определяемом свойством persistentStoragePath, а кэш — в подкаталоге, определяемом свойством cachePath. Свойство httpCacheType описывает тип кэша: в оперативной памяти или на диске. Если установлено только свойство storageName, остальные значения генерируются автоматически на его основе. Если вы задаёте какие-либо значения вручную, сделайте это до создания каких-либо страниц, принадлежащих профилю.
Профили могут использоваться для изоляции страниц друг от друга. Типичный пример — отдельный профиль «вне записи» для режима «конфиденциального просмотра». Профиль «вне записи» заставляет cookie, кэш HTTP и другие обычно постоянные данные храниться только в оперативной памяти. Свойство offTheRecord указывает, является ли профиль профилем «вне записи».
Доступ к профилю по умолчанию можно получить с помощью defaultProfile(). Это встроенный профиль, к которому принадлежат все веб-страницы, не созданные с использованием другого профиля.
Экземпляр WebEngineProfile можно создать и получить доступ к нему из C++ через класс QQuickWebEngineProfile, который предоставляет дополнительные возможности в C++. Это позволяет приложениям Qt Quick перехватывать запросы URL (QQuickWebEngineProfile::setRequestInterceptor) или регистрировать пользовательские схемы URL (QQuickWebEngineProfile::installUrlSchemeHandler).
Проверку правописания в полях HTML-формы можно включить для каждого профиля, установив свойство spellCheckEnabled, а текущие языки, используемые для проверки правописания, можно задать с помощью свойства spellCheckLanguages.
Документация по типам членов
enum QQuickWebEngineProfile::HttpCacheType
Этот перечисление описывает тип кэша HTTP:
| Константа | Значение | Описание |
|---|---|---|
QQuickWebEngineProfile::MemoryHttpCache |
0 |
Использовать кэш в оперативной памяти. Это значение по умолчанию, если off-the-record установлено. |
QQuickWebEngineProfile::DiskHttpCache |
1 |
Использовать кэш на диске. Это значение по умолчанию, если off-the-record не установлено. Возвращается к MemoryHttpCache если off-the-record установлено. |
QQuickWebEngineProfile::NoCache |
2 |
Отключить кэширование как в оперативной памяти, так и на диске. (Добавлена в Qt 5.7) |
enum QQuickWebEngineProfile::PersistentCookiesPolicy
Это перечисление описывает политику сохранения cookie:
| Константа | Значение | Описание |
|---|---|---|
QQuickWebEngineProfile::NoPersistentCookies |
0 |
Сессионные и постоянные cookie хранятся в оперативной памяти. Это единственное возможное значение, если off-the-record установлено или путь к постоянным данным недоступен. |
QQuickWebEngineProfile::AllowPersistentCookies |
1 |
Постоянные cookie сохраняются на диске и восстанавливаются из него, а сессионные cookie сохраняются на диске только для восстановления после сбоя. Это значение по умолчанию. |
QQuickWebEngineProfile::ForcePersistentCookies |
2 |
Сессионные и постоянные cookie сохраняются на диске и восстанавливаются из него. |
Документация свойств
cachePath : QString
Путь к расположению, где хранятся кэши профиля, в частности кэш HTTP.
По умолчанию кэши хранятся в каталоге под QStandardPaths::writableLocation(QStandardPaths::CacheLocation), с именем, сгенерированным с помощью storageName.
Функции доступа:
| QString | cachePath() const |
| void | setCachePath(const QString &path) |
Сигнал уведомления:
| void | cachePathChanged() |
downloadPath : QString
Путь к расположению, где хранятся загруженные файлы.
Переопределяет путь по умолчанию для местоположения загрузки, устанавливая его в path.
Если задано пустое значение, восстанавливается путь по умолчанию.
Примечание: По умолчанию путь загрузки — QStandardPaths::DownloadLocation.
Это свойство было добавлено в QtWebEngine 1.9.
Функции доступа:
| QString | downloadPath() const |
| void | setDownloadPath(const QString &path) |
Сигнал уведомления:
| void | downloadPathChanged() |
httpAcceptLanguage : QString
Значение поля заголовка HTTP Accept-Language.
Функции доступа:
| QString | httpAcceptLanguage() const |
| void | setHttpAcceptLanguage(const QString &httpAcceptLanguage) |
Сигнал уведомления:
| void | httpAcceptLanguageChanged() |
httpCacheMaximumSize : int
Максимальный размер кэша HTTP. Если 0, размер будет автоматически контролироваться QtWebEngine. Значение по умолчанию — 0.
Функции доступа:
| int | httpCacheMaximumSize() const |
| void | setHttpCacheMaximumSize(int maxSize) |
Сигнал уведомления:
| void | httpCacheMaximumSizeChanged() |
См. также httpCacheType.
httpCacheType : HttpCacheType
Это перечисление описывает тип кэша HTTP.
Если профиль в режиме «только для чтения», возвращается MemoryHttpCache.
Функции доступа:
| QQuickWebEngineProfile::HttpCacheType | httpCacheType() const |
| void | setHttpCacheType(QQuickWebEngineProfile::HttpCacheType) |
Сигнал уведомления:
| void | httpCacheTypeChanged() |
httpUserAgent : QString
Строка user-agent, отправляемая с HTTP для идентификации браузера.
Функции доступа:
| QString | httpUserAgent() const |
| void | setHttpUserAgent(const QString &userAgent) |
Сигнал уведомления:
| void | httpUserAgentChanged() |
offTheRecord : bool
Указывает, находится ли профиль веб-движка в режиме «только для чтения». Профиль «только для чтения» принудительно сохраняет куки, кэш HTTP и другие обычно постоянные данные только в оперативной памяти.
Функции доступа:
| bool | isOffTheRecord() const |
| void | setOffTheRecord(bool offTheRecord) |
Сигнал уведомления:
| void | offTheRecordChanged() |
persistentCookiesPolicy : PersistentCookiesPolicy
Это перечисление описывает политику сохранения куки. Если профиль в режиме «только для чтения», возвращается NoPersistentCookies.
Функции доступа:
| QQuickWebEngineProfile::PersistentCookiesPolicy | persistentCookiesPolicy() const |
| void | setPersistentCookiesPolicy(QQuickWebEngineProfile::PersistentCookiesPolicy) |
Сигнал уведомления:
| void | persistentCookiesPolicyChanged() |
persistentStoragePath : QString
Путь к расположению, где хранятся постоянные данные браузера и веб-контента. Постоянные данные включают постоянные куки, локальное хранилище HTML5 и посещённые ссылки.
По умолчанию хранилище расположено в каталоге под QStandardPaths::writableLocation(QStandardPaths::DataLocation), с именем, сгенерированным с помощью storageName.
Функции доступа:
| QString | persistentStoragePath() const |
| void | setPersistentStoragePath(const QString &path) |
Сигнал уведомления:
| void | persistentStoragePathChanged() |
spellCheckEnabled : bool
Это свойство содержит значение, указывающее, включен ли орфографический проверяльщик веб-движка.
Это свойство было добавлено в QtWebEngine 1.4.
Функции доступа:
| bool | isSpellCheckEnabled() const |
| void | setSpellCheckEnabled(bool enabled) |
Сигнал уведомления:
| void | spellCheckEnabledChanged() |
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() |
См. также persistentStoragePath и cachePath.
useForGlobalCertificateVerification : bool
Это свойство указывает, используется ли этот профиль для загрузки и кэширования во время глобальной проверки сертификатов при использовании протокола состояния онлайн-сертификата (OCSP), списков отзыва сертификатов (CRL) и доступа к информации об авторитете (AIA), например.
Пока один профиль имеет этот параметр включённым, все остальные профили смогут использовать его для проверки сертификатов. Только один профиль за раз может иметь этот параметр включённым. Рекомендуется, чтобы профиль имел кэш HTTP на диске, чтобы избежать ненужной повторной загрузки.
По умолчанию ни один профиль не имеет это свойство включенным.
В настоящее время влияет только на Linux/NSS установки, где наличие профиля с этой ролью включает OCSP.
Это свойство было добавлено в Qt 5.13.
Функции доступа:
| bool | isUsedForGlobalCertificateVerification() const |
| void | setUseForGlobalCertificateVerification(bool b) |
Сигнал уведомления:
| void | useForGlobalCertificateVerificationChanged() |
userScripts : const QQmlListProperty<QQuickWebEngineScript>
Это свойство содержит коллекцию скриптов, которые встраиваются во все страницы, использующие этот профиль.
Это свойство было добавлено в Qt 5.9.
Функции доступа:
| QQmlListProperty<QQuickWebEngineScript> | userScripts() |
См. также QQuickWebEngineScript и QQmlListReference.
Документация по членам-функциям
QQuickWebEngineProfile::QQuickWebEngineProfile(QObject *parent = Q_NULLPTR)
Создаёт новый профиль с родителем parent.
[signal] void QQuickWebEngineProfile::downloadFinished(QQuickWebEngineDownloadItem *download)
Этот сигнал испускается всякий раз, когда загрузка завершается, так как она успешно завершилась, была отменена или прервана (например, из-за потери подключения). Аргумент download содержит состояние завершённого экземпляра загрузки.
[signal] void QQuickWebEngineProfile::downloadRequested(QQuickWebEngineDownloadItem *download)
Этот сигнал испускается всякий раз, когда инициируется загрузка. Аргумент download содержит состояние загрузки. Загрузку необходимо явно принять с помощью QQuickWebEngineDownloadItem::accept() или она будет отменена по умолчанию. Элемент загрузки наследуется от профиля. Если она не принята, она будет удалена сразу после выдачи сигнала. Этот сигнал не может быть использован с очередью соединений.
[signal] void QQuickWebEngineProfile::presentNotification(QWebEngineNotification *notification)
Этот сигнал испускается всякий раз, когда появляется новое пользовательское уведомление. Аргумент notification содержит экземпляр уведомления для запроса данных и взаимодействия с ним.
void QQuickWebEngineProfile::clearHttpCache()
Удаляет записи кэша профиля.
Эта функция была добавлена в Qt 5.7.
Примечание: Эта функция может быть вызвана через систему метаобъектов и из QML. См. Q_INVOKABLE.
См. также WebEngineProfile::clearHttpCache.
QWebEngineClientCertificateStore *QQuickWebEngineProfile::clientCertificateStore()
Возвращает хранилище клиентских сертификатов профиля.
Эта функция была добавлена в Qt 5.13.
QWebEngineCookieStore *QQuickWebEngineProfile::cookieStore() const
Возвращает хранилище cookie для этого профиля.
[static] QQuickWebEngineProfile *QQuickWebEngineProfile::defaultProfile()
Возвращает профиль по умолчанию.
Профиль по умолчанию использует имя хранилища "Default".
См. также storageName().
void QQuickWebEngineProfile::installUrlSchemeHandler(const QByteArray &scheme, QWebEngineUrlSchemeHandler *handler)
Регистрирует обработчик handler для пользовательской схемы URL scheme в профиле.
Необходимо предварительно зарегистрировать схему с помощью QWebEngineUrlScheme::registerScheme при запуске приложения.
void QQuickWebEngineProfile::removeAllUrlSchemeHandlers()
Удаляет все установленные пользовательские обработчики схем URL в профиле.
void QQuickWebEngineProfile::removeUrlScheme(const QByteArray &scheme)
Удаляет пользовательскую схему URL scheme из профиля.
См. также removeUrlSchemeHandler().
void QQuickWebEngineProfile::removeUrlSchemeHandler(QWebEngineUrlSchemeHandler *handler)
Удаляет пользовательский обработчик схемы URL handler из профиля.
См. также removeUrlScheme().
void QQuickWebEngineProfile::setUrlRequestInterceptor(QWebEngineUrlRequestInterceptor *interceptor)
Регистрирует одиночный обработчик запросов interceptor для перехвата запросов URL.
Профиль не принимает владения указателем.
См. также QWebEngineUrlRequestInfo и QWebEngineUrlRequestInterceptor.
QStringList QQuickWebEngineProfile::spellCheckLanguages() const
Возвращает список языков, используемых орфографической проверкой.
Эта функция была добавлена в Qt 5.8.
Примечание: Функция-получатель для свойства spellCheckLanguages.
См. также setSpellCheckLanguages().
const QWebEngineUrlSchemeHandler *QQuickWebEngineProfile::urlSchemeHandler(const QByteArray &scheme) const
Возвращает зарегистрированный обработчик пользовательской схемы URL для схемы URL scheme.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qquickwebengineprofile.html