WebSocketEndClientHandshake-Funktion (websocket.h)

Die WebSocketEndClientHandshake-Funktion schließt den clientseitigen Handshake ab.

Syntax

HRESULT WebSocketEndClientHandshake(
  [in]                WEB_SOCKET_HANDLE             hWebSocket,
  [in]                const PWEB_SOCKET_HTTP_HEADER pResponseHeaders,
  [in]                ULONG                         ulReponseHeaderCount,
  [in, out, optional] ULONG                         *pulSelectedExtensions,
  [in, out, optional] ULONG                         *pulSelectedExtensionCount,
  [in, out, optional] ULONG                         *pulSelectedSubprotocol
);

Parameter

[in] hWebSocket

Typ: WEB_SOCKET_HANDLE

WebSocket-Sitzungshandle, das von einem vorherigen Aufruf von WebSocketCreateClientHandle zurückgegeben wurde.

[in] pResponseHeaders

Typ: const PWEB_SOCKET_HTTP_HEADER

Zeiger auf ein Array von WEB_SOCKET_HTTP_HEADER Strukturen, die die von der Anwendung empfangenen Antwortheader enthalten.

[in] ulReponseHeaderCount

Typ: ULONG

Anzahl der Antwortheader in pResponseHeaders.

[in, out, optional] pulSelectedExtensions

Typ: ULONG*

Zeigen Sie bei der Eingabe auf ein Array, das von der Anwendung zugeordnet wird. Zeigen Sie bei erfolgreicher Ausgabe auf ein Array von Zahlen, die die vom Server während des Client-Server-Handshakes ausgewählten Erweiterungen darstellen. Diese Zahl sind die nullbasierten Indizes im Erweiterungsarray, das in WebSocketBeginClientHandshake an pszExtensions übergeben wird.

[in, out, optional] pulSelectedExtensionCount

Typ: ULONG*

Bei eingabe: Anzahl der in pulSelectedExtensions zugeordneten Erweiterungen. Dies muss mindestens der Zahl entsprechen, die in WebSocketEndClientHandshake an ulExtensionCount übergeben wird. Bei erfolgreicher Ausgabe die Anzahl der in pulSelectedExtensions zurückgegebenen Erweiterungen.

[in, out, optional] pulSelectedSubprotocol

Typ: ULONG*

Zeigen Sie bei erfolgreicher Ausgabe auf eine Zahl, die das vom Server während des Client-Server-Handshakes ausgewählte Unterprotokoll darstellt. Diese Zahl ist der nullbasierte Index in das Array der Unterprotokolle, das in WebSocketBeginClientHandshake an pszSubprotocols übergeben wird.

Rückgabewert

Typ: HRESULT

Wenn die Funktion erfolgreich ist, wird S_OK zurückgegeben.

Wenn die Funktion fehlschlägt, gibt sie einen der folgenden oder einen in WinError.h definierten Systemfehlercode zurück.

Rückgabecode Beschreibung
E_INVALID_PROTOCOL_FORMAT
Protokolldaten weisen ein ungültiges Format auf.
E_UNSUPPORTED_SUBPROTOCOL
Der Server akzeptiert keines der von der Anwendung angegebenen Unterprotokolle.
E_UNSUPPORTED_EXTENSION
Der Server akzeptiert keine von der Anwendung angegebenen Erweiterungen.

Hinweise

Diese Funktion muss aufgerufen werden, um den clientseitigen Handshake nach einem vorherigen Aufruf von WebSocketBeginClientHandshake abzuschließen. Sobald der Client-Server-Handshake abgeschlossen ist, kann die Anwendung die Sitzungsfunktionen verwenden.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 8 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile websocket.h
Bibliothek Websocket.lib
DLL Websocket.dll

Weitere Informationen

WEB_SOCKET_HTTP_HEADER

WebSocketBeginClientHandshake

WebSocketBeginServerHandshake

WebSocketEndServerHandshake