Тип QML WebEngineDownloadItem
Предоставляет информацию о закачке. Подробнее...
| Оператор импорта: | import QtWebEngine 1.7 |
| С момента: | QtWebEngine 1.1 |
Свойства
- id : int
- interruptReason : перечисление
- interruptReasonString : строка
- isFinished : bool
- isPaused : bool
- isSavePageDownload : bool
- mimeType : строка
- путь : строка
- receivedBytes : int
- форматСохраненияСтраницы : перечисление
- состояние : перечисление
- totalBytes : int
Методы
Подробное описание
WebEngineDownloadItem моделирует загрузку на протяжении всего её жизненного цикла, начиная с запроса на ожидаемую загрузку и заканчивая завершённой загрузкой. Его можно использовать, например, для получения информации о новых загрузках, для отслеживания прогресса и для приостановки, возобновления и отмены загрузок.
Загрузки обычно вызываются взаимодействием пользователя на веб-странице. WebEngineProfile несет ответственность за уведомление приложения о новых запросах на загрузку, что он делает, испуская сигнал downloadRequested вместе с только что созданным WebEngineDownloadItem. Затем приложение может проверить этот элемент и решить, принять его или нет. Обработчик сигнала должен явно вызвать accept() в элементе, чтобы Qt WebEngine фактически начал загрузку и запись данных на диск. Если ни один обработчик сигнала не вызывает accept(), запрос на загрузку будет автоматически отклонен, и ничего не будет записано на диск.
Примечание: Некоторые свойства, такие как путь, под которым будет сохранён файл, могут быть изменены только до вызова accept().
Жизненный цикл объекта
Гарантируется, что все элементы будут валидными во время испускания сигнала downloadRequested. Если accept() не вызывается никаким обработчиком сигнала, элемент будет удалён немедленно после испускания сигнала. Это означает, что приложение не должно сохранять ссылки на отклоненные элементы загрузки.
Загрузки веб-страниц
В дополнение к обычным загрузкам файлов, которые состоят просто из извлечения некоторых сырых байтов из сети и записи их на диск, Qt WebEngine также поддерживает сохранение полных веб-страниц, что включает в себя разбор HTML страницы, загрузку любых зависимых ресурсов и, возможно, упаковку всего в специальный формат файла (форматСохраненияСтраницы). Чтобы проверить, является ли загрузка файлом или веб-страницей, используйте isSavePageDownload.
См. также WebEngineProfile, WebEngineProfile::downloadRequested и WebEngineProfile::downloadFinished.
Документация по свойствам
id : int
Содержит идентификатор элемента загрузки.
[только для чтения] interruptReason : перечисление
Возвращает причину прерывания загрузки:
| Постоянная | Описание |
|---|---|
WebEngineDownloadItem.NoReason |
Неизвестная причина или не прервано. |
WebEngineDownloadItem.FileFailed |
Общее системное исключение при операциях с файлами. |
WebEngineDownloadItem.FileAccessDenied |
Файл не может быть записан локально из-за ограничений доступа. |
WebEngineDownloadItem.FileNoSpace |
Недостаточно места на целевом диске. |
WebEngineDownloadItem.FileNameTooLong |
Имя каталога или файла слишком длинное. |
WebEngineDownloadItem.FileTooLarge |
Размер файла превышает ограничение файловой системы. |
WebEngineDownloadItem.FileVirusInfected |
Файл заражён вирусом. |
WebEngineDownloadItem.FileTransientError |
Временная проблема (например, файл используется, недостаточно памяти или одновременно открыто слишком много файлов). |
WebEngineDownloadItem.FileBlocked |
Файл заблокирован из-за локальной политики. |
WebEngineDownloadItem.FileSecurityCheckFailed |
Попытка проверки безопасности загрузки не удалась из-за непредвиденных причин. |
WebEngineDownloadItem.FileTooShort |
Была сделана попытка перейти за конец файла при открытии файла (как часть возобновления ранее прерванной загрузки). |
WebEngineDownloadItem.FileHashMismatch |
Частичный файл не соответствует ожидаемой хеш-сумме. |
WebEngineDownloadItem.NetworkFailed |
Общее сетевое исключение. |
WebEngineDownloadItem.NetworkTimeout |
Сеанc сетевой операции истек. |
WebEngineDownloadItem.NetworkDisconnected |
Сетевое соединение было прервано. |
WebEngineDownloadItem.NetworkServerDown |
Сервер вышел из строя. |
WebEngineDownloadItem.NetworkInvalidRequest |
Недействительный сетевой запрос (например, исходный или перенаправленный URL недействителен, имеет неподдерживаемый протокол или запрещён политикой). |
WebEngineDownloadItem.ServerFailed |
Общее исключение на сервере. |
WebEngineDownloadItem.ServerBadContent |
На сервере нет запрашиваемых данных. |
WebEngineDownloadItem.ServerUnauthorized |
Сервер не авторизовал доступ к ресурсу. |
WebEngineDownloadItem.ServerCertProblem |
Произошла проблема с сертификатом сервера. |
WebEngineDownloadItem.ServerForbidden |
Доступ запрещён сервером. |
WebEngineDownloadItem.ServerUnreachable |
Неожиданный ответ сервера (может указывать на то, что отвечающий сервер может не быть целевым сервером). |
WebEngineDownloadItem.UserCanceled |
Пользователь отменил загрузку. |
Это свойство было добавлено в QtWebEngine 1.5.
См. также interruptReasonString.
interruptReasonString : строка
Возвращает удобочитаемое описание причины прерывания загрузки.
Это свойство было добавлено в QtWebEngine 1.5.
См. также interruptReason.
[только для чтения] isFinished : bool
Завершена ли эта загрузка (завершена, отменена или прервана невозобновляемым состоянием).
Это свойство было добавлено в QtWebEngine 1.6.
[только для чтения] isPaused : bool
Приостановлена ли эта загрузка.
Это свойство было добавлено в QtWebEngine 1.6.
[только для чтения] isSavePageDownload : bool
Является ли это запросом на загрузку для сохранения веб-страницы или файла.
Это свойство было добавлено в QtWebEngine 1.7.
См. также форматСохраненияСтраницы.
mimeType : строка
Содержит тип MIME загрузки.
Это свойство было добавлено в QtWebEngine 1.2.
path : строка
Содержит полный целевой путь, куда загружаются данные.
Путь включает имя файла. Предлагаемый по умолчанию путь — стандартное место для загрузок, а имя файла выводится таким образом, чтобы не перезаписывать уже существующие файлы.
Путь загрузки можно установить только в обработчике downloadRequested до принятия загрузки.
См. также WebEngineProfile::downloadRequested() и accept().
receivedBytes : целое
Содержит объем данных в байтах, загруженных до настоящего момента.
savePageFormat : перечисление
Описывает формат сохранения веб-страницы.
| Константа | Описание |
|---|---|
WebEngineDownloadItem.UnknownSaveFormat |
Это не запрос на загрузку полной веб-страницы. |
WebEngineDownloadItem.SingleHtmlSaveFormat |
Страница сохраняется как единственная HTML-страница. Ресурсы, такие как изображения, не сохраняются. |
WebEngineDownloadItem.CompleteHtmlSaveFormat |
Страница сохраняется как полная HTML-страница, например, каталог, содержащий единственную HTML-страницу и ресурсы. |
WebEngineDownloadItem.MimeHtmlSaveFormat |
Страница сохраняется как полная веб-страница в формате MIME HTML. |
Это свойство было добавлено в QtWebEngine 1.3.
state : перечисление
Описывает состояние загрузки:
| Константа | Описание |
|---|---|
WebEngineDownloadItem.DownloadRequested |
Загрузка запрошена, но еще не принята. |
WebEngineDownloadItem.DownloadInProgress |
Загрузка в процессе. |
WebEngineDownloadItem.DownloadCompleted |
Загрузка успешно завершена. |
WebEngineDownloadItem.DownloadCancelled |
Загрузка отменена пользователем. |
WebEngineDownloadItem.DownloadInterrupted |
Загрузка прервана (сервером или из-за потери подключения). |
totalBytes : целое
Содержит общий объем данных для загрузки в байтах.
-1 означает, что общий размер неизвестен.
Методы
void accept()
Принимает запрос на загрузку, что запустит загрузку.
Если элемент находится в состоянии DownloadRequested, то он перейдет в состояние DownloadInProgress и начнется загрузка. Если элемент находится в любом другом состоянии, ничего не произойдет.
См. также state.
void cancel()
Отменяет загрузку.
Если элемент находится в состоянии DownloadInProgress, то он перейдет в состояние DownloadCancelled, загрузка остановится, а частично загруженные файлы будут удалены с диска.
Если элемент находится в состоянии DownloadCompleted, ничего не произойдет. Если элемент находится в любом другом состоянии, он перейдет в состояние DownloadCancelled без дальнейшего эффекта.
См. также state.
void pause()
Приостанавливает загрузку.
Не оказывает никакого влияния, если состояние не DownloadInProgress. Не изменяет состояние.
Этот метод был добавлен в QtWebEngine 1.6.
void resume()
Возобновляет загрузку, если она была приостановлена или прервана.
Не оказывает никакого влияния, если состояние не DownloadInProgress или DownloadInterrupted. Не изменяет состояние.
Этот метод был добавлен в QtWebEngine 1.6.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qml-qtwebengine-webenginedownloaditem.html