Spec-Zone.ru › Qt

Класс QWebEngineDownloadRequest

Класс QWebEngineDownloadRequest предоставляет информацию о загрузке. Подробнее...

Заголовок: #include <QWebEngineDownloadRequest>
CMake: find_package(Qt6 COMPONENTS WebEngineCore REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::WebEngineCore)
qmake: QT += webenginecore
Создается из: WebEngineDownloadRequest
Наследуется от: QObject
  • Список всех членов, включая унаследованные

Типы публичного доступа

Перечисление DownloadInterruptReason { НетПричин, ОшибкаФайла, ДоступОтказан, НетМестаНаДиске, СлишкомДлинноеИмяФайла, …, ОтменаПользователем }
Перечисление DownloadState { ЗапросЗагрузки, ЗагрузкаВПроцессе, ЗагрузкаЗавершена, ЗагрузкаОтменена, ЗагрузкаПрервана }
Перечисление SavePageFormat { НеизвестныйФормат, SingleHtmlSaveFormat, CompleteHtmlSaveFormat, MimeHtmlSaveFormat }

Свойства

  • isFinished : const bool
  • isPaused : const bool

Функции публичного доступа

QString downloadDirectory() const
QString downloadFileName() const
quint32 id() const
QWebEngineDownloadRequest::DownloadInterruptReason interruptReason() const
QString interruptReasonString() const
bool isFinished() const
bool isPaused() const
bool isSavePageDownload() const
QString mimeType() const
QWebEnginePage * page() const
qint64 receivedBytes() const
QWebEngineDownloadRequest::SavePageFormat savePageFormat() const
void setDownloadDirectory(const QString &directory)
void setDownloadFileName(const QString &fileName)
void setSavePageFormat(QWebEngineDownloadRequest::SavePageFormat format)
QWebEngineDownloadRequest::DownloadState state() const
QString suggestedFileName() const
qint64 totalBytes() const
QUrl url() const

Слот публичного доступа

void accept()
void cancel()
void pause()
void resume()

Сигналы

void downloadDirectoryChanged()
void downloadFileNameChanged()
void interruptReasonChanged()
void isFinishedChanged()
void isPausedChanged()
void receivedBytesChanged()
void savePageFormatChanged()
void stateChanged(QWebEngineDownloadRequest::DownloadState state)
void totalBytesChanged()

Подробное описание

QWebEngineDownloadRequest моделирует загрузку на протяжении всего её жизненного цикла, начиная с запроса на загрузку и заканчивая завершённой загрузкой. Его можно использовать, например, для получения информации о новых загрузках, для мониторинга прогресса и для приостановки, возобновления и отмены загрузок.

Загрузки обычно запускаются взаимодействием пользователя на веб-странице. Ответственность за уведомление приложения о новых запросах на загрузку лежит на QWebEngineProfile, который делает это, испуская сигнал downloadRequested вместе с только что созданным QWebEngineDownloadRequest. Приложение может затем проверить этот элемент и принять решение о принятии или отклонении. Обработчик сигнала должен явно вызвать accept() для элемента, чтобы Qt WebEngine фактически начал загрузку и запись данных на диск. Если ни один обработчик сигнала не вызывает accept(), запрос на загрузку будет автоматически отклонен, и ничего не будет записано на диск.

Примечание: Некоторые свойства, такие как установка пути и имени файла, где будет сохранён файл (см. downloadDirectory() и downloadFileName()), могут быть изменены только до вызова accept().

Жизненный цикл объекта

Гарантируется, что все элементы остаются валидными во время испускания сигнала downloadRequested. Если accept() не вызывается ни одним обработчиком сигнала, то элемент будет удалён немедленно после испускания сигнала. Это означает, что приложение не должно сохранять ссылки на отклоненные элементы загрузки. Также это означает, что приложение не должно использовать очередированное соединение с этим сигналом.

Если accept() вызывается обработчиком сигнала, то QWebEngineProfile принимает владение элементом. Однако приложение может безопасно удалить элемент в любое время, кроме обработки сигнала downloadRequested. Поскольку QWebEngineProfile является долгоживущим объектом, рекомендуется, чтобы приложение удаляло любые элементы, которыми оно больше не интересуется.

Примечание: Удаление элемента также автоматически отменяет загрузку начиная с версии 5.12.2, но для обеспечения переносимости рекомендуется отменять загрузку вручную перед удалением.

END_OF_DOCUMENT_MARKER

Загрузки веб-страниц

Помимо обычных загрузок файлов, которые просто извлекают некоторые сырые байты из сети и записывают их на диск, Qt WebEngine также поддерживает сохранение полных веб-страниц, что включает в себя разбор HTML-страницы, загрузку всех зависимых ресурсов и, возможно, упаковку всего в специальный формат файла (savePageFormat). Чтобы проверить, предназначена ли загрузка для файла или веб-страницы, используйте isSavePageDownload.

См. также QWebEngineProfile, QWebEngineProfile::downloadRequested, QWebEnginePage::download и QWebEnginePage::save.

Документация по типам членов

перечисление QWebEngineDownloadRequest::DownloadInterruptReason

Описание причины прерывания загрузки:

Постоянная Значение Описание
QWebEngineDownloadRequest::NoReason 0 Неизвестная причина или загрузка не прервана.
QWebEngineDownloadRequest::FileFailed 1 Общее повреждение файловой операции.
QWebEngineDownloadRequest::FileAccessDenied 2 Файл не может быть записан локально из-за ограничений доступа.
QWebEngineDownloadRequest::FileNoSpace 3 Недостаточно места на целевом диске.
QWebEngineDownloadRequest::FileNameTooLong 5 Имя файла или каталога слишком длинное.
QWebEngineDownloadRequest::FileTooLarge 6 Размер файла превышает ограничение файловой системы.
QWebEngineDownloadRequest::FileVirusInfected 7 Файл инфицирован вирусом.
QWebEngineDownloadRequest::FileTransientError 10 Временная проблема (например, файл используется, недостаточно памяти или открыто слишком много файлов одновременно).
QWebEngineDownloadRequest::FileBlocked 11 Файл заблокирован из-за локальной политики.
QWebEngineDownloadRequest::FileSecurityCheckFailed 12 Попытка проверить безопасность загрузки завершилась по непредвиденным причинам.
QWebEngineDownloadRequest::FileTooShort 13 Была предпринята попытка перейти за конец файла при открытии файла (в рамках возобновления ранее прерванной загрузки).
QWebEngineDownloadRequest::FileHashMismatch 14 Частичный файл не совпадает с ожидаемой хеш-суммой.
QWebEngineDownloadRequest::NetworkFailed 20 Общее повреждение сети.
QWebEngineDownloadRequest::NetworkTimeout 21 Сеть истекла.
QWebEngineDownloadRequest::NetworkDisconnected 22 Подключение к сети было прервано.
QWebEngineDownloadRequest::NetworkServerDown 23 Сервер отключен.
QWebEngineDownloadRequest::NetworkInvalidRequest 24 Запрос сети был недействителен (например, исходный или перенаправленный URL недействителен, имеет неподдерживаемый протокол или запрещен политикой).
QWebEngineDownloadRequest::ServerFailed 30 Общее повреждение сервера.
QWebEngineDownloadRequest::ServerBadContent 33 Серверу нет запрашиваемых данных.
QWebEngineDownloadRequest::ServerUnauthorized 34 Сервер не авторизовал доступ к ресурсу.
QWebEngineDownloadRequest::ServerCertProblem 35 Произошла проблема с сертификатом сервера.
QWebEngineDownloadRequest::ServerForbidden 36 Доступ запрещен сервером.
QWebEngineDownloadRequest::ServerUnreachable 37 Неожиданный ответ сервера (может указывать на то, что сервер, отвечающий на запрос, не является предполагаемым сервером).
QWebEngineDownloadRequest::UserCanceled 40 Пользователь отменил загрузку.

перечисление QWebEngineDownloadRequest::DownloadState

Это перечисление описывает состояние загрузки:

Постоянная Значение Описание
QWebEngineDownloadRequest::DownloadRequested 0 Загрузка запрошена, но еще не принята.
QWebEngineDownloadRequest::DownloadInProgress 1 Загрузка в процессе.
QWebEngineDownloadRequest::DownloadCompleted 2 Загрузка завершена успешно.
QWebEngineDownloadRequest::DownloadCancelled 3 Загрузка отменена.
QWebEngineDownloadRequest::DownloadInterrupted 4 Загрузка прервана (сервером или из-за потери подключения).

перечисление QWebEngineDownloadRequest::SavePageFormat

Это перечисление описывает формат сохранения веб-страницы.

Постоянная Значение Описание
QWebEngineDownloadRequest::UnknownSaveFormat -1 Это не запрос на загрузку полной веб-страницы.
QWebEngineDownloadRequest::SingleHtmlSaveFormat 0 Страница сохраняется как одна HTML-страница. Ресурсы, такие как изображения, не сохраняются.
QWebEngineDownloadRequest::CompleteHtmlSaveFormat 1 Страница сохраняется как полная HTML-страница, например, каталог, содержащий одну HTML-страницу и ресурсы.
QWebEngineDownloadRequest::MimeHtmlSaveFormat 2 Страница сохраняется как полная веб-страница в формате MIME HTML.

Документация по свойствам

[read-only] isFinished : const bool

Это свойство содержит значение, указывающее, завершена ли эта загрузка (завершена, отменена или прервана и не может быть возобновлена).

Функции доступа:

bool isFinished() const

Сигнал уведомления:

void isFinishedChanged()

См. также state().

[read-only] isPaused : const bool

Это свойство содержит значение, указывающее, приостановлена ли эта загрузка.

Функции доступа:

bool isPaused() const

Сигнал уведомления:

void isPausedChanged()

См. также pause() и resume().

Документация по функциям членов

[slot] void QWebEngineDownloadRequest::accept()

Принимает текущий запрос на загрузку, что запустит загрузку.

Если элемент находится в состоянии DownloadRequested, то он перейдет в состояние DownloadInProgress, и начнется загрузка. Если элемент находится в любом другом состоянии, то ничего не произойдет.

См. также isFinished и stateChanged().

[slot] void QWebEngineDownloadRequest::cancel()

Отменяет текущую загрузку.

Если элемент находится в состоянии DownloadInProgress, то он перейдет в состояние DownloadCancelled, загрузка остановится, а частично загруженные файлы будут удалены с диска.

END_OF_DOCUMENT_MARKER

Если элемент находится в состоянии DownloadCompleted, ничего не произойдёт. Если элемент находится в любом другом состоянии, он перейдёт в состояние DownloadCancelled без дальнейших последствий.

См. также isFinished и stateChanged().

[signal] void QWebEngineDownloadRequest::isPausedChanged()

Этот сигнал испускается всякий раз, когда isPaused изменяется.

Примечание: Сигнал-уведомление для свойства isPaused.

См. также pause() и isPaused.

[slot] void QWebEngineDownloadRequest::pause()

Приостанавливает загрузку.

Не оказывает никакого влияния, если состояние не DownloadInProgress. Не изменяет состояние.

См. также resume() и isPaused().

[slot] void QWebEngineDownloadRequest::resume()

Возобновляет текущую загрузку, если она была приостановлена или прервана.

Не оказывает никакого влияния, если состояние не DownloadInProgress или DownloadInterrupted. Не изменяет состояние.

См. также pause(), isPaused() и state().

[signal] void QWebEngineDownloadRequest::stateChanged(QWebEngineDownloadRequest::DownloadState state)

Этот сигнал испускается всякий раз, когда состояние загрузки state изменяется.

Примечание: Сигнал-уведомление для свойства state.

См. также state() и DownloadState.

QString QWebEngineDownloadRequest::downloadDirectory() const

Возвращает путь к каталогу загрузки.

Примечание: Функция-получатель для свойства downloadDirectory.

См. также setDownloadDirectory().

QString QWebEngineDownloadRequest::downloadFileName() const

Возвращает имя файла, в который будет загружаться файл.

Примечание: Функция-получатель для свойства downloadFileName.

См. также setDownloadFileName().

quint32 QWebEngineDownloadRequest::id() const

Возвращает идентификатор элемента загрузки.

Примечание: Функция-получатель для свойства id.

QWebEngineDownloadRequest::DownloadInterruptReason QWebEngineDownloadRequest::interruptReason() const

Возвращает причину прерывания загрузки.

Примечание: Функция-получатель для свойства interruptReason.

См. также interruptReasonString().

QString QWebEngineDownloadRequest::interruptReasonString() const

Возвращает удобочитаемое описание причины прерывания загрузки.

Примечание: Функция-получатель для свойства interruptReasonString.

См. также interruptReason().

bool QWebEngineDownloadRequest::isSavePageDownload() const

Возвращает true, если это запрос на загрузку для сохранения веб-страницы.

Примечание: Функция-получатель для свойства isSavePageDownload.

См. также savePageFormat() и setSavePageFormat().

QString QWebEngineDownloadRequest::mimeType() const

Возвращает MIME-тип загрузки.

Примечание: Функция-получатель для свойства mimeType.

QWebEnginePage *QWebEngineDownloadRequest::page() const

Возвращает страницу, на которой был запрошен запрос на загрузку. Если загрузка не была вызвана контентом на странице, возвращается nullptr.

qint64 QWebEngineDownloadRequest::receivedBytes() const

Возвращает количество данных в байтах, которые были загружены до сих пор.

-1 означает, что размер неизвестен.

Примечание: Функция-получатель для свойства receivedBytes.

QWebEngineDownloadRequest::SavePageFormat QWebEngineDownloadRequest::savePageFormat() const

Возвращает формат, в котором веб-страница будет сохранена, если это запрос на загрузку веб-страницы.

Примечание: Функция-получатель для свойства savePageFormat.

См. также setSavePageFormat() и isSavePageDownload().

void QWebEngineDownloadRequest::setDownloadDirectory(const QString &directory)

Устанавливает directory в качестве пути к каталогу для загрузки файла.

Путь к каталогу загрузки можно установить только в ответ на сигнал QWebEngineProfile::downloadRequested() перед принятием загрузки. После этого момента эта функция не оказывает никакого влияния на состояние элемента загрузки.

Примечание: Функция-установщик для свойства downloadDirectory.

См. также downloadDirectory().

void QWebEngineDownloadRequest::setDownloadFileName(const QString &fileName)

Устанавливает fileName в качестве имени файла, в который будет загружаться файл.

Имя файла загрузки можно установить только в ответ на сигнал QWebEngineProfile::downloadRequested() перед принятием загрузки. После этого момента эта функция не оказывает никакого влияния на состояние элемента загрузки.

Примечание: Функция-установщик для свойства downloadFileName.

См. также downloadFileName().

void QWebEngineDownloadRequest::setSavePageFormat(QWebEngineDownloadRequest::SavePageFormat format)

Устанавливает format, в котором веб-страница будет сохранена, если это запрос на загрузку веб-страницы.

Примечание: Функция-установщик для свойства savePageFormat.

См. также savePageFormat() и isSavePageDownload().

QWebEngineDownloadRequest::DownloadState QWebEngineDownloadRequest::state() const

Возвращает текущее состояние элемента загрузки.

Примечание: Функция-получатель для свойства state.

См. также DownloadState.

QString QWebEngineDownloadRequest::suggestedFileName() const

Возвращает предложенное имя файла.

Примечание: Функция-получатель для свойства suggestedFileName.

qint64 QWebEngineDownloadRequest::totalBytes() const

Возвращает общее количество данных для загрузки в байтах.

-1 означает, что размер неизвестен.

Примечание: Функция-получатель для свойства totalBytes.

QUrl QWebEngineDownloadRequest::url() const

Возвращает исходный URL загрузки.

Примечание: Функция-получатель для свойства url.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qwebenginedownloadrequest.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API