Класс QWebEngineProfile
Класс QWebEngineProfile предоставляет профиль веб-движка, используемый несколькими страницами. Подробнее...
| Заголовок: | #include <QWebEngineProfile> |
| qmake: | QT += webenginewidgets |
| С момента: | Qt 5.5 |
| Наследуется от: | QObject |
Открытые типы
| перечисление | Тип кэша HTTP { Кэш в памяти, Дисковый кэш, Отсутствует кэш } |
| перечисление | Политика постоянных файлов cookie { Нет постоянных файлов cookie, Разрешить постоянные файлы cookie, Принудительное использование постоянных файлов cookie } |
Открытые функции
| QWebEngineProfile(QObject *parent = Q_NULLPTR) | |
| QWebEngineProfile(const QString &storageName, QObject *parent = Q_NULLPTR) | |
| QString | путьКэш() const |
| void | очиститьВсеПосещенныеСсылки() |
| void | очиститьКэшHttp() |
| void | очиститьПосещенныеСсылки(const QList<QUrl> &urls) |
| QWebEngineCookieStore * | cookieStore() |
| QString | httpAcceptLanguage() const |
| int | максимальныйРазмерHttpКэша() const |
| QWebEngineProfile::HttpCacheType | типHttpКэша() const |
| QString | httpUserAgent() const |
| void | установитьОбработчикСхемыUrl(const QByteArray &scheme, QWebEngineUrlSchemeHandler *handler) |
| bool | являетсяТолькоДляОпределенногоСеанса() const |
| bool | проверкаОрфографииВключена() const |
| QWebEngineProfile::PersistentCookiesPolicy | политикаПостоянныхФайловCookie() const |
| QString | путьПостоянногоХранилища() const |
| void | удалитьВсеОбработчикиСхемыUrl() |
| void | удалитьСхемуUrl(const QByteArray &scheme) |
| void | удалитьОбработчикСхемыUrl(QWebEngineUrlSchemeHandler *handler) |
| QWebEngineScriptCollection * | скрипты() const |
| void | установитьПутьКэша(const QString &path) |
| void | установитьHttpAcceptLanguage(const QString &httpAcceptLanguage) |
| void | установитьМаксимальныйРазмерHttpКэша(int maxSize) |
| void | установитьТипHttpКэша(QWebEngineProfile::HttpCacheType httpCacheType) |
| void | установитьHttpUserAgent(const QString &userAgent) |
| void | установитьПолитикуПостоянныхФайловCookie(QWebEngineProfile::PersistentCookiesPolicy newPersistentCookiesPolicy) |
| void | установитьПутьПостоянногоХранилища(const QString &path) |
| void | установитьЗапросОбработчик(QWebEngineUrlRequestInterceptor *interceptor) |
| void | включитьПроверкуОрфографии(bool enable) |
| void | установитьЯзыкиПроверкиОрфографии(const QStringList &languages) |
| QWebEngineSettings * | настройки() const |
| QStringList | языкиПроверкиОрфографии() const |
| QString | имяХранилища() const |
| const QWebEngineUrlSchemeHandler * | обработчикСхемыUrl(const QByteArray &scheme) const |
| bool | посещенныеСсылкиСодержитUrl(const QUrl &url) const |
- 34 открытые функции, унаследованные от QObject
Сигналы
| void | запросЗагрузки(QWebEngineDownloadItem *download) |
- 2 сигнала унаследованных от QObject
Статические публичные члены
| QWebEngineProfile * | defaultProfile() |
- 10 статических публичных членов унаследованных от QObject
Дополнительные унаследованные члены
- 1 свойство унаследованное от QObject
- 1 публичный слот унаследованный от QObject
- 1 публичная переменная унаследованная от QObject
- 9 защищённых функций унаследованных от QObject
- 2 защищённых переменных унаследованных от QObject
Подробное описание
Класс QWebEngineProfile предоставляет профиль веб-движка, используемый несколькими страницами.
Профиль веб-движка содержит настройки, скрипты, политику сохранения постоянных куки и список посещённых ссылок, которые используются всеми страницами веб-движка, принадлежащими профилю.
Все страницы, принадлежащие профилю, используют общую экземпляр QWebEngineSettings, к которой можно получить доступ с помощью метода settings(). Аналогично, метод scripts() предоставляет доступ к общему экземпляру QWebEngineScriptCollection.
Информация о посещённых ссылках хранится вместе с постоянными куки и другими постоянными данными в хранилище, возвращаемом методом persistentStoragePath(). Кэш можно очистить от ссылок с помощью clearVisitedLinks() или clearAllVisitedLinks(). PersistentCookiesPolicy описывает, сохраняются ли сеансовые и постоянные куки в памяти или на диске.
Профили могут использоваться для изоляции страниц друг от друга. Типичный пример — выделенный профиль «без сохранения истории» для режима «инкогнито». Использование QWebEngineProfile() без определения имени хранилища создаёт новый профиль «без сохранения истории», который не оставляет следов на локальной машине и не имеет постоянных данных или кэша. Метод isOffTheRecord() можно использовать для проверки, является ли профиль профилем «без сохранения истории».
Доступ к профилю по умолчанию можно получить с помощью defaultProfile(). Это встроенный профиль, к которому принадлежат все веб-страницы, не созданные специально с другим профилем.
Реализация интерфейса QWebEngineUrlRequestInterceptor и регистрация перехватчика в профиле с помощью setRequestInterceptor() позволяют перехватывать, блокировать и изменять запросы URL (QWebEngineUrlRequestInfo) перед тем, как они достигнут сетевого стека Chromium.
Обработчик QWebEngineUrlSchemeHandler можно зарегистрировать для профиля с помощью installUrlSchemeHandler() для добавления поддержки пользовательских схем URL. Запросы для схемы затем отправляются в QWebEngineUrlSchemeHandler::requestStarted() как объекты QWebEngineUrlRequestJob.
Проверку правописания в полях форм HTML можно включить для каждого профиля с помощью метода setSpellCheckEnabled(), а текущие языки, используемые для проверки правописания, можно задать с помощью метода setSpellCheckLanguages().
Документация по типам членов
перечисление QWebEngineProfile::HttpCacheType
Это перечисление описывает тип кэша HTTP:
| Постоянная | Значение | Описание |
|---|---|---|
QWebEngineProfile::MemoryHttpCache |
0 |
Использовать кэш в оперативной памяти. Это значение по умолчанию, если off-the-record установлено. |
QWebEngineProfile::DiskHttpCache |
1 |
Использовать кэш на диске. Это значение по умолчанию, если профиль не является off-the-record. Если установлено в профиле off-the-record будет установлено MemoryHttpCache. |
QWebEngineProfile::NoCache |
2 |
Отключить кэширование в оперативной памяти и на диске. (Добавлено в Qt 5.7) |
перечисление QWebEngineProfile::PersistentCookiesPolicy
Это перечисление описывает политику сохранения куки:
| Постоянная | Значение | Описание |
|---|---|---|
QWebEngineProfile::NoPersistentCookies |
0 |
Сеансовые и постоянные куки хранятся в оперативной памяти. Это единственное возможное значение, если off-the-record установлено или путь к постоянным данным недоступен. |
QWebEngineProfile::AllowPersistentCookies |
1 |
Куки, отмеченные как постоянные, сохраняются на диске и восстанавливаются из него, а сеансовые куки сохраняются на диске только для восстановления после сбоя. Это значение по умолчанию. |
QWebEngineProfile::ForcePersistentCookies |
2 |
Сеансовые и постоянные куки сохраняются и восстанавливаются с диска. |
Документация по документации функций членов
QWebEngineProfile::QWebEngineProfile(QObject *parent = Q_NULLPTR)
Создаёт новый профиль «без сохранения истории» с родителем parent.
Профиль «без сохранения истории» не оставляет записей на локальной машине и не имеет постоянных данных или кэша. Таким образом, кэш HTTP может быть только в оперативной памяти, а куки могут быть только неперсистентными. Попытка изменить эти настройки не повлияет на них.
См. также isOffTheRecord().
QWebEngineProfile::QWebEngineProfile(const QString &storageName, QObject *parent = Q_NULLPTR)
Создаёт новый профиль с именем хранилища storageName и родителем parent.
Имя хранилища должно быть уникальным.
Профиль QWebEngineProfile на основе диска должен быть уничтожен при завершении работы приложения, иначе кэш и постоянные данные могут не быть полностью сохранены на диске.
См. также storageName().
QString QWebEngineProfile::cachePath() const
Возвращает путь, используемый для кэшей.
По умолчанию, это путь ниже QStandardPaths::CacheLocation в подкаталоге, специфичном для QtWebengine/StorageName.
Примечание: Используйте QStandardPaths::writableLocation(QStandardPaths::CacheLocation) для получения пути QStandardPaths::CacheLocation.
См. также setCachePath(), storageName() и QStandardPaths::writableLocation().
void QWebEngineProfile::clearAllVisitedLinks()
Очищает все ссылки из базы данных посещённых ссылок.
См. также clearVisitedLinks().
void QWebEngineProfile::clearHttpCache()
Удаляет записи кэша профиля.
Эта функция была добавлена в Qt 5.7.
void QWebEngineProfile::clearVisitedLinks(const QList<QUrl> &urls)
Очищает ссылки из urls из базы данных посещённых ссылок.
См. также clearAllVisitedLinks().
QWebEngineCookieStore *QWebEngineProfile::cookieStore()
Возвращает хранилище куки для этого профиля.
Эта функция была добавлена в Qt 5.6.
QWebEngineProfile *QWebEngineProfile::defaultProfile()
Возвращает профиль по умолчанию.
Профиль по умолчанию использует имя хранилища "Default".
См. также storageName().
void QWebEngineProfile::downloadRequested(QWebEngineDownloadItem *download)
Этот сигнал испускается всякий раз, когда запрос на загрузку. Аргумент download содержит состояние загрузки. Загрузка должна быть явно принята с помощью QWebEngineDownloadItem::accept(), иначе она будет отменена по умолчанию. Элемент загрузки является потомком профиля. Если он не принят, он будет удалён сразу после испускания сигнала. Этот сигнал не может использоваться с подключением в очереди.
Эта функция была добавлена в Qt 5.5.
См. также QWebEngineDownloadItem и QWebEnginePage::download().
QString QWebEngineProfile::httpAcceptLanguage() const
Возвращает значение поля заголовка HTTP Accept-Language.
Эта функция была добавлена в Qt 5.6.
См. также setHttpAcceptLanguage().
int QWebEngineProfile::httpCacheMaximumSize() const
Возвращает максимальный размер кэша HTTP в байтах.
Возвращает 0 если размер автоматически контролируется QtWebEngine.
См. также setHttpCacheMaximumSize() и httpCacheType().
QWebEngineProfile::HttpCacheType QWebEngineProfile::httpCacheType() const
Возвращает тип используемого кэша HTTP.
Если профиль является профилем «без сохранения истории», возвращается MemoryHttpCache.
См. также setHttpCacheType() и cachePath().
QString QWebEngineProfile::httpUserAgent() const
Возвращает строку user-agent, отправляемую вместе с HTTP для идентификации браузера.
Примечание: В Windows 8.1 и новее строка user-agent по умолчанию всегда будет содержать «Windows NT 6.2» (Windows 8), если в приложении нет манифеста, который объявляет поддержку более новых версий Windows.
См. также setHttpUserAgent().
void QWebEngineProfile::installUrlSchemeHandler(const QByteArray &scheme, QWebEngineUrlSchemeHandler *handler)
Регистрирует обработчик handler для пользовательской схемы URL scheme в профиле.
Эта функция была добавлена в Qt 5.6.
bool QWebEngineProfile::isOffTheRecord() const
Возвращает значение true, если это профиль «без сохранения истории», который не оставляет записи на компьютере.
Это заставит куки и кэш HTTP находиться в оперативной памяти, но также заставит все остальные обычно постоянные данные храниться в оперативной памяти.
bool QWebEngineProfile::isSpellCheckEnabled() const
Возвращает true если проверка правописания включена; в противном случае возвращает false.
Эта функция была добавлена в Qt 5.8.
См. также setSpellCheckEnabled().
QWebEngineProfile::PersistentCookiesPolicy QWebEngineProfile::persistentCookiesPolicy() const
Возвращает текущую политику для постоянных файлов cookie.
Если профиль работает в режиме «без сохранения данных», возвращается NoPersistentCookies.
См. также setPersistentCookiesPolicy().
QString QWebEngineProfile::persistentStoragePath() const
Возвращает путь, используемый для хранения постоянных данных браузера и веб-контента.
Постоянные данные включают постоянные файлы cookie, локальное хранилище HTML5 и посещенные ссылки.
По умолчанию, этот путь находится в подкаталоге QtWebengine/StorageName ниже каталога QStandardPaths::DataLocation.
Примечание: Используйте QStandardPaths::writableLocation(QStandardPaths::DataLocation) для получения пути QStandardPaths::DataLocation.
См. также setPersistentStoragePath(), storageName() и QStandardPaths::writableLocation().
void QWebEngineProfile::removeAllUrlSchemeHandlers()
Удаляет все обработчики пользовательских схем URL, установленные в профиле.
Эта функция была добавлена в Qt 5.6.
void QWebEngineProfile::removeUrlScheme(const QByteArray &scheme)
Удаляет пользовательскую схему URL scheme из профиля.
Эта функция была добавлена в Qt 5.6.
См. также removeUrlSchemeHandler().
void QWebEngineProfile::removeUrlSchemeHandler(QWebEngineUrlSchemeHandler *handler)
Удаляет обработчик пользовательской схемы URL handler из профиля.
Эта функция была добавлена в Qt 5.6.
См. также removeUrlScheme().
QWebEngineScriptCollection *QWebEngineProfile::scripts() const
Возвращает коллекцию скриптов, которые вводятся во все страницы, использующие этот профиль.
См. также QWebEngineScriptCollection, QWebEngineScript и QWebEnginePage::scripts().
void QWebEngineProfile::setCachePath(const QString &path)
Переопределяет путь по умолчанию, используемый для кэша на диске, устанавливая его в path.
Если значение равно пустой строке, восстанавливается путь по умолчанию.
См. также cachePath().
void QWebEngineProfile::setHttpAcceptLanguage(const QString &httpAcceptLanguage)
Устанавливает значение поля Accept-Language HTTP-заголовка запроса в httpAcceptLanguage.
Эта функция была добавлена в Qt 5.6.
См. также httpAcceptLanguage().
void QWebEngineProfile::setHttpCacheMaximumSize(int maxSize)
Устанавливает максимальный размер HTTP-кэша в maxSize байт.
Установка значения в 0 означает, что размер будет управляться автоматически QtWebEngine.
См. также httpCacheMaximumSize() и setHttpCacheType().
void QWebEngineProfile::setHttpCacheType(QWebEngineProfile::HttpCacheType httpCacheType)
Устанавливает тип HTTP-кэша в httpCacheType.
См. также httpCacheType() и setCachePath().
void QWebEngineProfile::setHttpUserAgent(const QString &userAgent)
Переопределяет строку пользователя по умолчанию, устанавливая ее в userAgent.
См. также httpUserAgent().
void QWebEngineProfile::setPersistentCookiesPolicy(QWebEngineProfile::PersistentCookiesPolicy newPersistentCookiesPolicy)
Устанавливает политику для постоянных файлов cookie в newPersistentCookiesPolicy.
См. также persistentCookiesPolicy().
void QWebEngineProfile::setPersistentStoragePath(const QString &path)
Переопределяет путь по умолчанию, используемый для хранения постоянных данных веб-движка.
Если path установлено в пустую строку, восстанавливается путь по умолчанию.
См. также persistentStoragePath().
void QWebEngineProfile::setRequestInterceptor(QWebEngineUrlRequestInterceptor *interceptor)
Регистрирует обработчик запросов interceptor для перехвата запросов URL.
Профиль не принимает владение указателем.
Эта функция была добавлена в Qt 5.6.
См. также QWebEngineUrlRequestInfo.
void QWebEngineProfile::setSpellCheckEnabled(bool enable)
Включает проверку правописания, если enable равно true, иначе отключает ее.
Эта функция была добавлена в Qt 5.8.
См. также isSpellCheckEnabled().
void QWebEngineProfile::setSpellCheckLanguages(const QStringList &languages)
Устанавливает текущий список languages для проверки правописания. Каждое значение языка должно соответствовать имени словаря .bdic. Например, язык en-US загрузит словарь en-US.bdic.
См. документацию по функции проверки правописания для получения информации о том, как выполнятся поиск файлов словарей.
Для получения дополнительной информации о том, как скомпилировать словари .bdic, обратитесь к примеру проверки правописания.
Эта функция была добавлена в Qt 5.8.
См. также spellCheckLanguages().
QWebEngineSettings *QWebEngineProfile::settings() const
Возвращает настройки по умолчанию для всех страниц в этом профиле.
QStringList QWebEngineProfile::spellCheckLanguages() const
Возвращает список языков, используемых для проверки правописания.
Эта функция была добавлена в Qt 5.8.
См. также setSpellCheckLanguages().
QString QWebEngineProfile::storageName() const
Возвращает имя хранилища для профиля.
Имя хранилища используется для предоставления отдельного подкаталога для постоянных данных и кэша для каждого профиля, использующего диск.
const QWebEngineUrlSchemeHandler *QWebEngineProfile::urlSchemeHandler(const QByteArray &scheme) const
Возвращает обработчик пользовательской схемы URL, зарегистрированный для схемы URL scheme.
Эта функция была добавлена в Qt 5.6.
bool QWebEngineProfile::visitedLinksContainsUrl(const QUrl &url) const
Возвращает true если url считается посещенной ссылкой в этом профиле.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qwebengineprofile.html