Qt Network

The Qt Network module provides a set of APIs for programming applications that use TCP/IP. Operations such as requests, cookies, and sending data over HTTP are handled by various C++ classes.

Using the Module

Using a Qt module's C++ API requires linking against the module library, either directly or through other dependencies. Several build tools have dedicated support for this, including CMake and qmake.

Building with CMake

Use the find_package() command to locate the needed module component in the Qt6 package:

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

For more details, see the Build with CMake overview.

Building with qmake

To configure the module for building with qmake, add the module as a value of the QT variable in the project's .pro file:

 QT += network

Articles and Guides

These articles contain information about Qt Network setup and about applications with networking capabilities.

API Reference

These are links to the API reference materials.

Module Evolution

Changes to Qt Network lists important changes in the module API and functionality that were done for the Qt 6 series of Qt.

Licenses and Attributions

Qt Network is available under commercial licenses from The Qt Company. In addition, it is available under the GNU Lesser General Public License, version 3, or the GNU General Public License, version 2. See Qt Licensing for further details.

Furthermore, Qt Network in Qt 6.8.0 may contain third-party modules under the following permissive licenses:

Qt Network can make use of the OpenSSL Toolkit as a back end. The library is then linked against OpenSSL in a way that requires compliance with the OpenSSL License. To allow linking OpenSSL with Qt Network under the GPL, following exceptions to the GPL do apply:

 In addition, as a special exception, the copyright holders listed above give
 permission to link the code of its release of Qt with the OpenSSL project's
 "OpenSSL" library (or modified versions of the "OpenSSL" library that use the
 same license as the original version), and distribute the linked executables.

 You must comply with the GNU General Public License version 2 in all
 respects for all of the code used other than the "OpenSSL" code.  If you
 modify this file, you may extend this exception to your version of the file,
 but you are not obligated to do so.  If you do not wish to do so, delete
 this exception statement from your version of this file.

Also note shipping OpenSSL might cause Import and Export Restrictions to apply.