QWebEngineUrlRequestInfo Class
The QWebEngineUrlRequestInfo class provides information about URL requests. More...
Header: | #include <QWebEngineUrlRequestInfo> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS WebEngineCore) target_link_libraries(mytarget PRIVATE Qt6::WebEngineCore) |
qmake: | QT += webenginecore |
Public Types
enum | NavigationType { NavigationTypeLink, NavigationTypeTyped, NavigationTypeFormSubmitted, NavigationTypeBackForward, NavigationTypeReload, …, NavigationTypeOther } |
enum | ResourceType { ResourceTypeMainFrame, ResourceTypeSubFrame, ResourceTypeStylesheet, ResourceTypeScript, ResourceTypeImage, …, ResourceTypeUnknown } |
Public Functions
void | block(bool shouldBlock) |
QUrl | firstPartyUrl() const |
(since 6.5) QHash<QByteArray, QByteArray> | httpHeaders() const |
QUrl | initiator() const |
QWebEngineUrlRequestInfo::NavigationType | navigationType() const |
void | redirect(const QUrl &url) |
(since 6.7) QIODevice * | requestBody() const |
QByteArray | requestMethod() const |
QUrl | requestUrl() const |
QWebEngineUrlRequestInfo::ResourceType | resourceType() const |
void | setHttpHeader(const QByteArray &name, const QByteArray &value) |
Detailed Description
The QWebEngineUrlRequestInfo is useful for setting extra header fields for requests or for redirecting certain requests without payload data to another URL. This class cannot be instantiated or copied by the user, instead it will be created by Qt WebEngine and sent through the virtual function QWebEngineUrlRequestInterceptor::interceptRequest() if an interceptor has been set.
Member Type Documentation
enum QWebEngineUrlRequestInfo::NavigationType
This enum type describes the navigation type of the request:
Constant | Value | Description |
---|---|---|
QWebEngineUrlRequestInfo::NavigationTypeLink | 0 | Navigation initiated by clicking a link. |
QWebEngineUrlRequestInfo::NavigationTypeTyped | 1 | Navigation explicitly initiated by typing a URL. |
QWebEngineUrlRequestInfo::NavigationTypeFormSubmitted | 2 | Navigation submits a form. |
QWebEngineUrlRequestInfo::NavigationTypeBackForward | 3 | Navigation initiated by a history action. |
QWebEngineUrlRequestInfo::NavigationTypeReload | 4 | Navigation initiated by refreshing the page. |
QWebEngineUrlRequestInfo::NavigationTypeRedirect | 6 | Navigation triggered automatically by page content or remote server. (Added in Qt 5.14) |
QWebEngineUrlRequestInfo::NavigationTypeOther | 5 | None of the above. |
enum QWebEngineUrlRequestInfo::ResourceType
This enum type holds the type of the requested resource:
Constant | Value | Description |
---|---|---|
QWebEngineUrlRequestInfo::ResourceTypeMainFrame | 0 | Top level page. |
QWebEngineUrlRequestInfo::ResourceTypeSubFrame | 1 | Frame or iframe. |
QWebEngineUrlRequestInfo::ResourceTypeStylesheet | 2 | A CSS stylesheet. |
QWebEngineUrlRequestInfo::ResourceTypeScript | 3 | An external script. |
QWebEngineUrlRequestInfo::ResourceTypeImage | 4 | An image (JPG, GIF, PNG, and so on). |
QWebEngineUrlRequestInfo::ResourceTypeFontResource | 5 | A font. |
QWebEngineUrlRequestInfo::ResourceTypeSubResource | 6 | An "other" subresource. |
QWebEngineUrlRequestInfo::ResourceTypeObject | 7 | An object (or embed) tag for a plugin or a resource that a plugin requested. |
QWebEngineUrlRequestInfo::ResourceTypeMedia | 8 | A media resource. |
QWebEngineUrlRequestInfo::ResourceTypeWorker | 9 | The main resource of a dedicated worker. |
QWebEngineUrlRequestInfo::ResourceTypeSharedWorker | 10 | The main resource of a shared worker. |
QWebEngineUrlRequestInfo::ResourceTypePrefetch | 11 | An explicitly requested prefetch. |
QWebEngineUrlRequestInfo::ResourceTypeFavicon | 12 | A favicon. |
QWebEngineUrlRequestInfo::ResourceTypeXhr | 13 | An XMLHttpRequest. |
QWebEngineUrlRequestInfo::ResourceTypePing | 14 | A ping request for <a ping>. |
QWebEngineUrlRequestInfo::ResourceTypeServiceWorker | 15 | The main resource of a service worker. |
QWebEngineUrlRequestInfo::ResourceTypeCspReport | 16 | A report of Content Security Policy (CSP) violations. CSP reports are in JSON format and they are delivered by HTTP POST requests to specified servers. (Added in Qt 5.7) |
QWebEngineUrlRequestInfo::ResourceTypePluginResource | 17 | A resource requested by a plugin. (Added in Qt 5.7) |
QWebEngineUrlRequestInfo::ResourceTypeNavigationPreloadMainFrame | 19 | A main-frame service worker navigation preload request. (Added in Qt 5.14) |
QWebEngineUrlRequestInfo::ResourceTypeNavigationPreloadSubFrame | 20 | A sub-frame service worker navigation preload request. (Added in Qt 5.14) |
QWebEngineUrlRequestInfo::ResourceTypeWebSocket | 254 | A WebSocket request. (Added in Qt 6.4) |
QWebEngineUrlRequestInfo::ResourceTypeUnknown | 255 | Unknown request type. |
Note: For forward compatibility all values not matched should be treated as unknown, not just ResourceTypeUnknown
.
Member Function Documentation
void QWebEngineUrlRequestInfo::block(bool shouldBlock)
Blocks this request if shouldBlock is true, so that it will not proceed.
This function can be used to prevent navigating away from a given domain, for example.
QUrl QWebEngineUrlRequestInfo::firstPartyUrl() const
Returns the first party URL of the request. The first party URL is the URL of the page that issued the request.
[since 6.5]
QHash<QByteArray, QByteArray> QWebEngineUrlRequestInfo::httpHeaders() const
Returns the request headers.
Note: Not all headers are visible at this stage as Chromium will add security and proxy headers at a later stage.
This function was introduced in Qt 6.5.
QUrl QWebEngineUrlRequestInfo::initiator() const
Returns the origin URL of the document that initiated the navigation of a frame to another frame.
QWebEngineUrlRequestInfo::NavigationType QWebEngineUrlRequestInfo::navigationType() const
Returns the navigation type of the request.
See also NavigationType.
void QWebEngineUrlRequestInfo::redirect(const QUrl &url)
Redirects this request to url. It is only possible to redirect requests that do not have payload data, such as GET requests.
[since 6.7]
QIODevice *QWebEngineUrlRequestInfo::requestBody() const
Returns a pointer to a QIODevice that gives access to the request body. The request body can contain data for example when the request is a POST request. If the request body is empty the QIODevice reflects this and does not return any data when performing read operations on it.
This function was introduced in Qt 6.7.
QByteArray QWebEngineUrlRequestInfo::requestMethod() const
Returns the HTTP method of the request (for example, GET or POST).
QUrl QWebEngineUrlRequestInfo::requestUrl() const
Returns the requested URL.
QWebEngineUrlRequestInfo::ResourceType QWebEngineUrlRequestInfo::resourceType() const
Returns the resource type of the request.
See also ResourceType.
void QWebEngineUrlRequestInfo::setHttpHeader(const QByteArray &name, const QByteArray &value)
Sets the request header name to value for this request.