QWebSocketProtocol Namespace

Contains constants related to the WebSocket standard. More...

Header: #include <QWebSocketProtocol>
qmake: QT += websockets
Since: Qt 5.3

Types

enum CloseCode { CloseCodeNormal, CloseCodeGoingAway, CloseCodeProtocolError, CloseCodeDatatypeNotSupported, ..., CloseCodeTlsHandshakeFailed }
enum Version { VersionUnknown, Version0, Version4, Version5, ..., VersionLatest }

Detailed Description

Contains constants related to the WebSocket standard.

Type Documentation

enum QWebSocketProtocol::CloseCode

The close codes supported by WebSockets V13

Constant Value Description
QWebSocketProtocol::CloseCodeNormal 1000 Normal closure
QWebSocketProtocol::CloseCodeGoingAway 1001 Going away
QWebSocketProtocol::CloseCodeProtocolError 1002 Protocol error
QWebSocketProtocol::CloseCodeDatatypeNotSupported 1003 Unsupported data
QWebSocketProtocol::CloseCodeReserved1004 1004 Reserved
QWebSocketProtocol::CloseCodeMissingStatusCode 1005 No status received
QWebSocketProtocol::CloseCodeAbnormalDisconnection 1006 Abnormal closure
QWebSocketProtocol::CloseCodeWrongDatatype 1007 Invalid frame payload data
QWebSocketProtocol::CloseCodePolicyViolated 1008 Policy violation
QWebSocketProtocol::CloseCodeTooMuchData 1009 Message too big
QWebSocketProtocol::CloseCodeMissingExtension 1010 Mandatory extension missing
QWebSocketProtocol::CloseCodeBadOperation 1011 Internal server error
QWebSocketProtocol::CloseCodeTlsHandshakeFailed 1015 TLS handshake failed

See also QWebSocket::close().

enum QWebSocketProtocol::Version

The different defined versions of the WebSocket protocol.

For an overview of the differences between the different protocols, see pywebsocket's WebSocketProtocolSpec.

Constant Value Description
QWebSocketProtocol::VersionUnknown -1 Unknown or unspecified version.
QWebSocketProtocol::Version0 0 hixie76 and hybi-00. Works with key1, key2 and a key in the payload. Attribute: Sec-WebSocket-Draft value 0. Not supported by QtWebSockets.
QWebSocketProtocol::Version4 4 hybi-04. Changed handshake: key1, key2, key3 ==> Sec-WebSocket-Key, Sec-WebSocket-Nonce, Sec-WebSocket-Accept Sec-WebSocket-Draft renamed to Sec-WebSocket-Version Sec-WebSocket-Version = 4. Not supported by QtWebSockets.
QWebSocketProtocol::Version5 5 hybi-05. Sec-WebSocket-Version = 5 Removed Sec-WebSocket-Nonce Added Sec-WebSocket-Accept. Not supported by QtWebSockets.
QWebSocketProtocol::Version6 6 Sec-WebSocket-Version = 6. Not supported by QtWebSockets.
QWebSocketProtocol::Version7 7 hybi-07. Sec-WebSocket-Version = 7. Not supported by QtWebSockets.
QWebSocketProtocol::Version8 8 hybi-8, hybi-9, hybi-10, hybi-11 and hybi-12. Status codes 1005 and 1006 are added and all codes are now unsigned Internal error results in 1006. Not supported by QtWebSockets.
QWebSocketProtocol::Version13 13 hybi-13, hybi14, hybi-15, hybi-16, hybi-17 and RFC 6455. Sec-WebSocket-Version = 13 Status code 1004 is now reserved Added 1008, 1009 and 1010 Must support TLS Clarify multiple version support. Supported by QtWebSockets.
QWebSocketProtocol::VersionLatest Version13 Refers to the latest known version to QtWebSockets.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qwebsocketprotocol.html