QWebEngineUrlSchemeHandler¶
The
QWebEngineUrlSchemeHandler
class is a base class for handling custom URL schemes. More…
Detailed Description¶
To implement a custom URL scheme for QtWebEngine , you first have to create an instance of
QWebEngineUrlScheme
and register it usingregisterScheme()
.Note
Make sure that you create and register the scheme object before the
QGuiApplication
orQApplication
object is instantiated.Then you must create a class derived from
QWebEngineUrlSchemeHandler
, and reimplement therequestStarted()
method.Finally, install the scheme handler object via
installUrlSchemeHandler()
orinstallUrlSchemeHandler()
.class MySchemeHandler : public QWebEngineUrlSchemeHandler { public: MySchemeHandler(QObject *parent = nullptr); void requestStarted(QWebEngineUrlRequestJob *request) { // .... } }; int main(int argc, char **argv) { QWebEngineUrlScheme scheme("myscheme"); scheme.setSyntax(QWebEngineUrlScheme::Syntax::HostAndPort); scheme.setDefaultPort(2345); scheme.setFlags(QWebEngineUrlScheme::SecureScheme); QWebEngineUrlScheme::registerScheme(scheme); // ... QApplication app(argc, argv); // ... // installUrlSchemeHandler does not take ownership of the handler. MySchemeHandler *handler = new MySchemeHandler(parent); QWebEngineProfile::defaultProfile()->installUrlSchemeHandler("myscheme", handler); }See also
QWebEngineUrlScheme
WebEngine Widgets WebUI Example
- class PySide2.QtWebEngineCore.QWebEngineUrlSchemeHandler([parent=Q_NULLPTR])¶
- param parent:
Constructs a new URL scheme handler.
The handler is created with the parent
parent
.
- PySide2.QtWebEngineCore.QWebEngineUrlSchemeHandler.requestStarted(arg__1)¶
- Parameters:
This method is called whenever a request
request
for the registered scheme is started.This method must be reimplemented by all custom URL scheme handlers. The request is asynchronous and does not need to be handled right away.
See also
© 2022 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.