Chapter 23. Qt Network Programming
Until now, we have only talked about using Qt for GUI programming. This is Qt’s main mission, but you can also do other things with it. For example, you can write network applications with the Qt network extension. This extension includes a number of classes that provide portable access to TCP/IP sockets on a low level, some higher-level classes that let you access network resources by specifying URLs, and two classes that provide general URL manipulation.
To show how to write network programs with Qt, this chapter contains two sample programs, a simple HTTP server, and a simple download client. You’ll also find information about which classes are available and what they can do for you.
Low-Level Socket Access
The classes QSocket
,
QServerSocket
, QSocketDevice
,
QHostAddress
, and QSocketNotifier
provide low-level, platform-independent access to TCP/IP sockets. Of
these classes, QSocketDevice
is rarely used because it
only provides a thin layer around the operating system socket
functionality. QSocketNotifier
integrates a system
socket into the Qt event notification system and event loop by
emitting a signal when data can be read from or written to the
socket. You do not need this class if you use
QSocket
or QServerSocket
because
these two classes have their own facilities for emitting signals
(which in turn use
QSocketNotifier
internally).
This leaves QSocket
,
QServerSocket
, and
QHostAddress
for the general cases. Of these classes,
QSocket
and ...
Get Programming with Qt, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.