QWebSocketServer Class
WebSocket 기반 서버를 구현합니다. 더 보기...
| 헤더: | #include <QWebSocketServer> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS WebSockets) target_link_libraries(mytarget PRIVATE Qt6::WebSockets) |
| qmake: | QT += websockets |
| 상속: | QObject |
공개 타입
| enum | SslMode { SecureMode, NonSecureMode } |
공개 함수
| QWebSocketServer(const QString &serverName, QWebSocketServer::SslMode secureMode, QObject *parent = nullptr) | |
| virtual | ~QWebSocketServer() override |
| void | close() |
| QWebSocketProtocol::CloseCode | error() const |
| QString | errorString() const |
| void | handleConnection(QTcpSocket *socket) const |
| std::chrono::milliseconds | handshakeTimeout() const |
| int | handshakeTimeoutMS() const |
| bool | hasPendingConnections() const |
| bool | isListening() const |
| bool | listen(const QHostAddress &address = QHostAddress::Any, quint16 port = 0) |
| int | maxPendingConnections() const |
| virtual QWebSocket * | nextPendingConnection() |
| void | pauseAccepting() |
| QNetworkProxy | proxy() const |
| void | resumeAccepting() |
| QWebSocketServer::SslMode | secureMode() const |
| QHostAddress | serverAddress() const |
| QString | serverName() const |
| quint16 | serverPort() const |
| QUrl | serverUrl() const |
| void | setHandshakeTimeout(std::chrono::milliseconds msec) |
| void | setHandshakeTimeout(int msec) |
| void | setMaxPendingConnections(int numConnections) |
| void | setProxy(const QNetworkProxy &networkProxy) |
| void | setServerName(const QString &serverName) |
| bool | setSocketDescriptor(qintptr socketDescriptor) |
| void | setSslConfiguration(const QSslConfiguration &sslConfiguration) |
(since 6.4) void | setSupportedSubprotocols(const QStringList &protocols) |
| qintptr | socketDescriptor() const |
| QSslConfiguration | sslConfiguration() const |
(since 6.4) QStringList | supportedSubprotocols() const |
| QList<QWebSocketProtocol::Version> | supportedVersions() const |
신호
| void | acceptError(QAbstractSocket::SocketError socketError) |
(since 6.2) void | alertReceived(QSsl::AlertLevel level, QSsl::AlertType type, const QString &description) |
(since 6.2) void | alertSent(QSsl::AlertLevel level, QSsl::AlertType type, const QString &description) |
| void | closed() |
(since 6.2) void | handshakeInterruptedOnError(const QSslError &error) |
| void | newConnection() |
| void | originAuthenticationRequired(QWebSocketCorsAuthenticator *authenticator) |
| void | peerVerifyError(const QSslError &error) |
| void | preSharedKeyAuthenticationRequired(QSslPreSharedKeyAuthenticator *authenticator) |
| void | serverError(QWebSocketProtocol::CloseCode closeCode) |
| void | sslErrors(const QList<QSslError> &errors) |
(since 6.11) void | sslErrorsOccurred(QSslSocket *socket, const QList<QSslError> &errors) |
상세 설명
이 클래스는 ` QTcpServer`을 모델로 하여 동일한 방식으로 동작합니다. 따라서 ` QTcpServer` 사용법을 알고 있다면 `QWebSocketServer` 사용법도 알 수 있습니다. 이 클래스를 사용하면 들어오는 WebSocket 연결을 수락할 수 있습니다. 포트를 직접 지정하거나 `QWebSocketServer`가 자동으로 포트를 선택하도록 할 수 있습니다. 특정 주소나 시스템의 모든 주소를 수신 대기 대상으로 지정할 수 있습니다. 서버가 들어오는 연결을 수신 대기하도록 하려면 ` listen()`를 호출하십시오.
클라이언트가 서버에 연결할 때마다 newConnection() 신호가 발생합니다. nextPendingConnection()를 호출하여 대기 중인 연결을 연결된 QWebSocket 로 수락할 수 있습니다. 이 함수는 클라이언트와의 통신에 사용할 수 있는 QAbstractSocket::ConnectedState 의 QWebSocket 에 대한 포인터를 반환합니다.
오류가 발생하면 ` serverError()`가 오류 유형을 반환하며, ` errorString()`를 호출하여 발생한 상황에 대한 사람이 읽을 수 있는 설명을 확인할 수 있습니다.
연결을 수신 대기할 때, 서버가 수신 대기 중인 주소와 포트는 serverAddress() 및 serverPort()를 통해 확인할 수 있습니다.
close()를 호출하면 QWebSocketServer가 들어오는 연결에 대한 수신을 중지합니다.
QWebSocketServer는 현재 WebSocket 확장을 지원하지 않습니다.
참고: 자체 서명된 인증서를 사용할경우 , Firefox 버그 594502로 인해 Firefox가 보안 WebSocket 서버에 연결되지 않습니다. 이 문제를 해결하려면 먼저 HTTPS를 사용하여 보안 WebSocket 서버에 접속하십시오. Firefox는 인증서가 유효하지 않다고 표시할 것입니다. 이 시점에서 해당 인증서를 예외 목록에 추가할 수 있습니다. 이후에는 보안 WebSocket 연결이 정상적으로 작동할 것입니다.
QWebSocketServer는 RFC 6455에 명시된 바와 같이 웹소켓 프로토콜 버전 13만 지원합니다.
서비스 거부(DoS)를 방지하기 위해 기본 연결 핸드셰이크 타임아웃은 10초로 설정되어 있으며, 이는 ` setHandshakeTimeout()`을 사용하여 사용자 정의할 수 있습니다.
WebSocket 서버 예제 및 QWebSocket도 참조하십시오 .
멤버 유형 문서
enum QWebSocketServer::SslMode
서버가 wss(SecureMode)로 작동하는지, 아니면 ws(NonSecureMode)로 작동하는지를 나타냅니다.
| 상수 | 값 | 설명 |
|---|---|---|
QWebSocketServer::SecureMode | 0 | 서버가 보안 모드(WSS)로 작동합니다. |
QWebSocketServer::NonSecureMode | 1 | 서버가 비보안 모드(WS)에서 작동합니다. |
멤버 함수 문서
[explicit] QWebSocketServer::QWebSocketServer(const QString &serverName, QWebSocketServer::SslMode secureMode, QObject *parent = nullptr)
지정된 ` serverName`을 사용하여 새로운 `QWebSocketServer`를 생성합니다. ` serverName `는 HTTP 핸드셰이크 단계에서 서버를 식별하는 데 사용됩니다. 이 매개변수는 비워둘 수 있으며, 이 경우 클라이언트에 서버 이름이 전송되지 않습니다. ` secureMode ` 매개변수는 서버가 wss(SecureMode)를 통해 작동하는지, 아니면 ws(NonSecureMode)를 통해 작동하는지를 나타냅니다.
parent 는 QObject 생성자에 전달됩니다.
[override virtual noexcept] QWebSocketServer::~QWebSocketServer()
QWebSocketServer 객체를 삭제합니다. 서버가 연결을 수신 대기 중이라면 소켓이 자동으로 닫힙니다. 대기열에 남아 있는 모든 클라이언트 QWebSockets는 닫히고 삭제됩니다.
close()도 참조하십시오 .
[signal] void QWebSocketServer::acceptError(QAbstractSocket::SocketError socketError)
이 신호는 새로운 연결 수락 과정에서 오류가 발생했을 때 발신됩니다. ‘ socketError ’ 매개변수는 발생한 오류의 유형을 설명합니다.
pauseAccepting() 및 resumeAccepting()도 참조하십시오 .
[signal, since 6.2] void QWebSocketServer::alertReceived(QSsl::AlertLevel level, QSsl::AlertType type, const QString &description)
QWebSocketServer 피어로부터 경고 메시지가 수신되면 이 신호를 발신합니다. ` level `는 경고가 치명적인 오류인지, 아니면 경고인지 여부를 나타냅니다. ` type `는 경고가 전송된 이유를 설명하는 코드입니다. 경고 메시지에 대한 텍스트 설명이 있는 경우, ` description`에 해당 내용이 제공됩니다.
참고: 이 신호는 주로 정보 제공 및 디버깅 목적으로 사용되며, 애플리케이션에서 별도로 처리할 필요가 없습니다. 알림이 치명적인 경우, 기본 백엔드가 이를 처리하고 연결을 종료합니다.
참고: 모든 백엔드가 이 기능을 지원하는 것은아닙니다 .
이 함수는 Qt 6.2에서 도입되었습니다.
alertSent(), QSsl::AlertLevel 및 QSsl::AlertType도 참조하십시오 .
[signal, since 6.2] void QWebSocketServer::alertSent(QSsl::AlertLevel level, QSsl::AlertType type, const QString &description)
QWebSocketServer 피어에게 경고 메시지가 전송된 경우 이 신호를 발생시킵니다. ` level `는 경고인지 치명적인 오류인지 여부를 나타냅니다. ` type `는 경고 메시지의 코드를 반환합니다. 경고 메시지에 대한 텍스트 설명이 있는 경우, ` description`에 해당 설명이 포함됩니다.
참고: 이 신호는 주로 정보 제공용이며 디버깅 목적으로 사용될 수 있지만, 일반적으로 애플리케이션 측에서 별도의 조치를 취할 필요는 없습니다.
참고: 모든 백엔드가 이 기능을 지원하는 것은아닙니다 .
이 함수는 Qt 6.2에서 도입되었습니다.
alertReceived(), QSsl::AlertLevel 및 QSsl::AlertType도 참조하십시오 .
void QWebSocketServer::close()
서버를 종료합니다. 서버는 더 이상 들어오는 연결을 수신하지 않습니다.
[signal] void QWebSocketServer::closed()
이 신호는 서버가 연결을 종료했을 때 발생합니다.
close()도 참조하십시오 .
QWebSocketProtocol::CloseCode QWebSocketServer::error() const
마지막으로 발생한 오류에 대한 오류 코드를 반환합니다. 오류가 발생하지 않은 경우 QWebSocketProtocol::CloseCodeNormal 가 반환됩니다.
errorString()도 참조하십시오 .
QString QWebSocketServer::errorString() const
마지막으로 발생한 오류에 대한 사람이 읽기 쉬운 설명을 반환합니다. 오류가 발생하지 않은 경우, 빈 문자열이 반환됩니다.
serverError()도 참조하십시오 .
void QWebSocketServer::handleConnection(QTcpSocket *socket) const
TCP socket 를 WebSocket으로 업그레이드합니다.
QWebSocketServer 객체는 소켓 객체의 소유권을 인수하여 적절한 시점에 이를 삭제합니다.
[signal, since 6.2] void QWebSocketServer::handshakeInterruptedOnError(const QSslError &error)
QWebSocketServer error 에서 인증서 검증 문제가 발견되었고, 에서 조기 오류 보고가 활성화된 경우 이 신호를 발생시킵니다. QSslConfiguration
이 함수는 Qt 6.2에서 도입되었습니다.
sslErrors() 및 QSslConfiguration::setHandshakeMustInterruptOnError()도 참조하십시오 .
std::chrono::milliseconds QWebSocketServer::handshakeTimeout() const
새 연결에 대한 핸드셰이크 타임아웃을 밀리초 단위로 반환합니다.
기본값은 10초입니다. 피어가 핸드셰이크를 완료하는 데 이보다 더 많은 시간이 소요될 경우, 해당 연결은 종료됩니다.
setHandshakeTimeout() 및 handshakeTimeoutMS()도 참조하십시오 .
int QWebSocketServer::handshakeTimeoutMS() const
새 연결에 대한 핸드셰이크 타임아웃을 밀리초 단위로 반환합니다.
기본값은 10초입니다. 상대방이 핸드셰이크를 완료하는 데 이보다 더 많은 시간이 소요될 경우, 해당 연결은 종료됩니다.
setHandshakeTimeout() 및 handshakeTimeout()도 참조하십시오 .
bool QWebSocketServer::hasPendingConnections() const
서버에 대기 중인 연결이 있으면 true를 반환하고, 그렇지 않으면 false를 반환합니다.
nextPendingConnection() 및 setMaxPendingConnections()도 참조하십시오 .
bool QWebSocketServer::isListening() const
서버가 현재 들어오는 연결을 수신 대기 중이면 true를 반환하고, 그렇지 않으면 false를 반환합니다. 수신 대기 실패 시 error() 함수는 그 원인을 반환합니다.
bool QWebSocketServer::listen(const QHostAddress &address = QHostAddress::Any, quint16 port = 0)
서버가 주소 address 및 포트 port 에서 들어오는 연결을 수신 대기하도록 지시합니다. port 가 0인 경우 포트가 자동으로 선택됩니다. address 가 QHostAddress::Any 인 경우, 서버는 모든 네트워크 인터페이스에서 수신 대기합니다.
성공 시 true를 반환하고, 그렇지 않으면 false를 반환합니다.
isListening()도 참조하십시오 .
int QWebSocketServer::maxPendingConnections() const
대기 중인 수락된 연결의 최대 개수를 반환합니다. 기본값은 30입니다.
setMaxPendingConnections() 및 hasPendingConnections()도 참조하십시오 .
[signal] void QWebSocketServer::newConnection()
이 신호는 새로운 연결이 가능해질 때마다 전송됩니다.
hasPendingConnections() 및 nextPendingConnection()도 참조하십시오 .
[virtual] QWebSocket *QWebSocketServer::nextPendingConnection()
대기 중인 다음 연결을 연결된 ` QWebSocket ` 객체로 반환합니다. ` QWebSocketServer `는 반환된 ` QWebSocket ` 객체의 소유권을 인수하지 않습니다. 더 이상 사용되지 않게 되면 호출자가 해당 객체를 명시적으로 삭제해야 하며, 그렇지 않으면 메모리 누수가 발생합니다. 대기 중인 연결이 없는 상태에서 이 함수를 호출하면 `nullptr`이 반환됩니다.
참고: 반환된 QWebSocket 객체는 다른 스레드에서 사용할 수 없습니다.
참조: hasPendingConnections()
[signal] void QWebSocketServer::originAuthenticationRequired(QWebSocketCorsAuthenticator *authenticator)
이 신호는 새로운 연결이 요청될 때 발생합니다. 이 신호에 연결된 슬롯은 (origin() 호출을 통해 확인할 수 있는) 발신원이 authenticator 객체에서 허용되는지 여부를 ( setAllowed()을 호출하여) 표시해야 합니다.
이 신호에 연결된 슬롯이 없는 경우, 기본적으로 모든 원본이 허용됩니다.
참고: 연결이 항상 성공하므로, QueuedConnection을 사용하여 이 신호에 연결할수는 없습니다 .
void QWebSocketServer::pauseAccepting()
새로 들어오는 연결을 일시 중지합니다. 대기열에 있는 연결은 그대로 유지됩니다.
resumeAccepting()도 참조하십시오 .
[signal] void QWebSocketServer::peerVerifyError(const QSslError &error)
QWebSocketServer SSL 핸드셰이크 과정에서 암호화가 설정되기 전, 피어의 신원을 확인하는 중에 오류가 발생했음을 알리기 위해 이 신호를 여러 번 전송할 수 있습니다. ‘ error ’은 일반적으로 ‘ QWebSocketServer ’가 피어를 안전하게 식별할 수 없음을 나타냅니다.
이 신호는 문제가 발생했을 때 조기에 이를 알려줍니다. 이 신호에 연결하면, 핸드셰이크가 완료되기 전에 연결된 슬롯 내부에서 수동으로 연결을 끊을 수 있습니다. 아무런 조치가 취해지지 않으면, QWebSocketServer 는 QWebSocketServer::sslErrors()를 발생시키게 됩니다.
sslErrors()도 참조하십시오 .
[signal] void QWebSocketServer::preSharedKeyAuthenticationRequired(QSslPreSharedKeyAuthenticator *authenticator)
QWebSocketServer PSK 암호 모음을 협상할 때 이 신호를 전송하며, 따라서 PSK 인증이 필요합니다.
PSK를 사용할 때, SSL 핸드셰이크를 계속 진행하려면 클라이언트가 서버에 유효한 신원 정보와 유효한 사전 공유 키를 전송해야 합니다. 애플리케이션은 이 신호에 연결된 슬롯을 통해, 필요에 따라 전달된 ` authenticator ` 객체를 채움으로써 이 정보를 제공할 수 있습니다.
참고: 이 신호를무시하거나 필요한 인증 정보를 제공하지 않으면 핸드셰이크가 실패하여 연결이 중단됩니다.
참고: ` authenticator `객체는 소켓이 소유하고 있으므로, 애플리케이션에서 이를 삭제해서는 안 됩니다.
QSslPreSharedKeyAuthenticator 및 QSslSocket::preSharedKeyAuthenticationRequired()도 참조하십시오 .
QNetworkProxy QWebSocketServer::proxy() const
이 서버의 네트워크 프록시를 반환합니다. 기본적으로 QNetworkProxy::DefaultProxy 이 사용됩니다.
setProxy()도 참조하십시오 .
void QWebSocketServer::resumeAccepting()
새로운 연결을 다시 수락합니다.
pauseAccepting()도 참조하십시오 .
QWebSocketServer::SslMode QWebSocketServer::secureMode() const
서버가 실행 중인 보안 모드를 반환합니다.
QWebSocketServer() 및 SslMode도 참조하십시오 .
QHostAddress QWebSocketServer::serverAddress() const
서버가 연결을 수신 대기 중이면 서버의 주소를 반환하고, 그렇지 않으면 QHostAddress::Null 를 반환합니다.
serverPort() 및 listen()도 참조하십시오 .
[signal] void QWebSocketServer::serverError(QWebSocketProtocol::CloseCode closeCode)
이 신호는 WebSocket 연결 설정 중에 오류가 발생했을 때 전송됩니다. ‘ closeCode ’ 매개변수는 발생한 오류의 유형을 나타냅니다.
errorString()도 참조하십시오 .
QString QWebSocketServer::serverName() const
HTTP 핸드셰이크 단계에서 사용되는 서버 이름을 반환합니다.
setServerName()도 참조하십시오 .
quint16 QWebSocketServer::serverPort() const
서버가 연결을 수신 대기 중이면 서버의 포트를 반환하고, 그렇지 않으면 0을 반환합니다.
serverAddress() 및 listen()도 참조하십시오 .
QUrl QWebSocketServer::serverUrl() const
서버가 연결을 수신 대기 중일 경우, 클라이언트가 이 서버에 연결하는 데 사용할 수 있는 URL을 반환합니다. 그렇지 않은 경우 유효하지 않은 URL이 반환됩니다.
serverPort(), serverAddress() 및 listen()도 참조하십시오 .
void QWebSocketServer::setHandshakeTimeout(std::chrono::milliseconds msec)
msec 밀리초로 새 연결에 대한 핸드셰이크 타임아웃을 설정합니다.
기본값은 10초입니다. 피어가 핸드셰이크를 완료하는 데 이보다 더 많은 시간이 소요되면 해당 연결이 종료됩니다. 음수 값(예: -1)을 전달하여 타임아웃을 비활성화할 수 있습니다.
handshakeTimeout() 및 handshakeTimeoutMS()도 참조하십시오 .
void QWebSocketServer::setHandshakeTimeout(int msec)
이것은 오버로드된 함수입니다.
void QWebSocketServer::setMaxPendingConnections(int numConnections)
대기 중인 수락된 연결의 최대 개수를 numConnections 로 설정합니다. WebSocketServer 는 nextPendingConnection()가 호출되기 전까지 numConnections 개 이하의 수신 연결만 수락합니다. 기본적으로 대기 중인 연결의 제한은 30개입니다.
QWebSocketServer 연결 수가 최대치에 도달하면 QWebSocketProtocol::CloseCodeAbnormalDisconnection 종료 코드와 함께 error() 신호를 발생시킵니다. WebSocket 핸드셰이크가 실패하고 소켓이 닫힙니다.
maxPendingConnections() 및 hasPendingConnections()도 참조하십시오 .
void QWebSocketServer::setProxy(const QNetworkProxy &networkProxy)
이 서버의 명시적 네트워크 프록시를 networkProxy 로 설정합니다.
프록시 사용을 비활성화하려면 QNetworkProxy::NoProxy 프록시 유형을 사용하십시오:
server->setProxy(QNetworkProxy::NoProxy);proxy()도 참조하십시오 .
void QWebSocketServer::setServerName(const QString &serverName)
HTTP 핸드셰이크 단계에서 사용될 서버 이름을 지정된 serverName 로 설정합니다. serverName 는 비워둘 수 있으며, 이 경우 클라이언트에게 빈 서버 이름이 전송됩니다. 이미 연결된 클라이언트에게는 이 변경 사항이 알림되지 않으며, 새로 연결되는 클라이언트만 이 새로운 이름을 확인하게 됩니다.
serverName()도 참조하십시오 .
bool QWebSocketServer::setSocketDescriptor(qintptr socketDescriptor)
이 서버가 socketDescriptor 에 대한 수신 연결을 수신 대기할 때 사용할 소켓 디스크립터를 설정합니다.
소켓이 성공적으로 설정되면 true를 반환하고, 그렇지 않으면 false를 반환합니다. 소켓은 수신 대기 상태에 있는 것으로 간주됩니다.
socketDescriptor() 및 isListening()도 참조하십시오 .
void QWebSocketServer::setSslConfiguration(const QSslConfiguration &sslConfiguration)
QWebSocketServer 의 SSL 구성을 sslConfiguration 로 설정합니다. QWebSocketServer 가 비보안 모드(QWebSocketServer::NonSecureMode)로 실행되는 경우 이 메서드는 아무런 효과가 없습니다.
sslConfiguration() 및 SslMode도 참조하십시오 .
[since 6.4] void QWebSocketServer::setSupportedSubprotocols(const QStringList &protocols)
서버에서 지원하는 프로토콜 목록을 ` protocols`로 설정합니다.
이 함수는 Qt 6.4에서 도입되었습니다.
supportedSubprotocols()도 참조하십시오 .
qintptr QWebSocketServer::socketDescriptor() const
서버가 들어오는 명령을 수신 대기하는 데 사용하는 네이티브 소켓 디스크립터를 반환하며, 서버가 수신 대기 중이 아닌 경우 -1을 반환합니다. 서버가 QNetworkProxy 를 사용하는 경우, 반환된 디스크립터는 네이티브 소켓 함수와 함께 사용할 수 없을 수도 있습니다.
setSocketDescriptor() 및 isListening()도 참조하십시오 .
QSslConfiguration QWebSocketServer::sslConfiguration() const
QWebSocketServer 에서 사용하는 SSL 구성을 반환합니다. 서버가 보안 모드(QWebSocketServer::SecureMode)로 실행되고 있지 않은 경우, 이 메서드는 QSslConfiguration::defaultConfiguration()를 반환합니다.
setSslConfiguration(), SslMode 및 QSslConfiguration::defaultConfiguration()도 참조하십시오 .
[signal] void QWebSocketServer::sslErrors(const QList<QSslError> &errors)
QWebSocketServer SSL 핸드셰이크 후, 피어의 신원을 확인하는 과정에서 하나 이상의 오류가 발생했음을 나타내기 위해 이 신호를 전송합니다.
이러한 오류는 대개 ` QWebSocketServer `가 상대방의 신원을 안전하게 확인할 수 없음을 나타냅니다. 별도의 조치가 취해지지 않는 한, 이 신호가 전송된 후 연결이 끊어집니다.
errors QSslSocket 가 상대방의 신원을 확인하는 것을 방해하는 하나 이상의 오류가 포함되어 있습니다.
peerVerifyError() 및 sslErrorsOccurred()도 참조하십시오 .
[signal, since 6.11] void QWebSocketServer::sslErrorsOccurred(QSslSocket *socket, const QList<QSslError> &errors)
QWebSocketServer SSL 핸드셰이크 후, 상대방의 신원을 확인하는 과정에서 하나 이상의 오류가 발생했음을 나타내기 위해 이 신호를 전송합니다.
이러한 오류는 대개 socket 가 상대방의 신원을 안전하게 확인할 수 없음을 나타냅니다. 별도의 조치가 취해지지 않는 한, 이 신호가 전송된 후 연결이 끊어집니다.
errors QSslSocket 가 상대방의 신원을 확인하는 것을 방해하는 하나 이상의 오류가 포함되어 있습니다.
발생한 오류에도 불구하고 연결을 계속 진행하려면, 이 신호에 연결된 슬롯 내부에서 ` QSslSocket::ignoreSslErrors()`를 호출해야 합니다. 나중에 오류 목록에 접근해야 할 경우, ` QSslSocket::sslHandshakeErrors()`를 호출할 수 있습니다.
참고: 이 신호에 연결할 때는 Qt::QueuedConnection 를 사용할수 없으며 , 그렇지 않으면 QSslSocket::ignoreSslErrors()를 호출해도 아무런 효과가 없습니다.
이 함수는 Qt 6.11에서 도입되었습니다.
peerVerifyError() 및 sslErrors()도 참조하십시오 .
[since 6.4] QStringList QWebSocketServer::supportedSubprotocols() const
서버에서 지원하는 프로토콜 목록을 반환합니다.
이 함수는 Qt 6.4에서 도입되었습니다.
setSupportedSubprotocols()도 참조하십시오 .
QList<QWebSocketProtocol::Version> QWebSocketServer::supportedVersions() const
이 서버가 지원하는 WebSocket 버전의 목록을 반환합니다.
© 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.