En esta página

Qt WebChannel

Qt WebChannel permite la comunicación de igual a igual entre un servidor (aplicación QML/C++) y un cliente (aplicación HTML/JavaScript o QML). Es compatible con Qt WebEngine. Además, puede funcionar en todos los navegadores que admitan WebSockets, lo que permite a los clientes de Qt WebChannel ejecutarse en cualquier entorno JavaScript (incluido QML). Para ello es necesario implementar un transporte personalizado basado en Qt WebSockets.

El módulo proporciona una biblioteca JavaScript para la integración perfecta de aplicaciones C++ y QML con clientes HTML/JavaScript y QML. Los clientes deben utilizar la biblioteca JavaScript para acceder a los QObjects serializados publicados por las aplicaciones host.

Uso del módulo

API QML

Los tipos QML del módulo están disponibles a través de la importación QtWebChannel. Para utilizar los tipos, añada la siguiente sentencia import a su archivo .qml:

import QtWebChannel

API C

El uso de la API C++ de un módulo Qt requiere enlazar con la biblioteca del módulo, ya sea directamente o a través de otras dependencias. Varias herramientas de compilación tienen soporte dedicado para esto, incluyendo CMake y qmake.

Compilación con CMake

Utilice el comando find_package() para localizar el componente del módulo necesario en el paquete Qt6:

find_package(Qt6 REQUIRED COMPONENTS WebChannel)
target_link_libraries(mytarget PRIVATE Qt6::WebChannel)

Para obtener más información, consulta la descripción general de la compilación con CMake.

Compilación con qmake

Para configurar el módulo para su compilación con qmake, añada el módulo como valor de la variable QT en el archivo .pro del proyecto:

QT += webchannel

Ejemplos

Referencia

Licencias

Qt WebChannel está disponible bajo licencias comerciales de The Qt Company. Además, está disponible bajo licencias de software libre. Estas licencias de software libre son la Licencia Pública General Reducida de GNU, versión 3, o la Licencia Pública General de GNU, versión 2. Consulte Licencias de Qt para más detalles.

© 2026 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.