QWebSocketProtocol Namespace
Contains constants related to the WebSocket standard. More...
Header: | #include <QWebSocketProtocol> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS WebSockets) target_link_libraries(mytarget PRIVATE Qt6::WebSockets) |
qmake: | QT += websockets |
Types
enum | CloseCode { CloseCodeNormal, CloseCodeGoingAway, CloseCodeProtocolError, CloseCodeDatatypeNotSupported, CloseCodeReserved1004, …, CloseCodeTlsHandshakeFailed } |
enum | Version { VersionUnknown, Version0, Version4, Version5, Version6, …, VersionLatest } |
Detailed Description
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. |