Condividi tramite


Funzione WebSocketEndClientHandshake (websocket.h)

La funzione WebSocketEndClientHandshake completa l'handshake sul lato client.

Sintassi

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
);

Parametri

[in] hWebSocket

Tipo: WEB_SOCKET_HANDLE

Handle di sessione WebSocket restituito da una chiamata precedente a WebSocketCreateClientHandle.

[in] pResponseHeaders

Tipo: const PWEB_SOCKET_HTTP_HEADER

Puntatore a una matrice di strutture WEB_SOCKET_HTTP_HEADER che contengono le intestazioni di risposta ricevute dall'applicazione.

[in] ulReponseHeaderCount

Tipo: ULONG

Numero di intestazioni di risposta in pResponseHeaders.

[in, out, optional] pulSelectedExtensions

Tipo: ULONG*

In input, puntatore a una matrice allocata dall'applicazione. In caso di output riuscito, puntatore a una matrice di numeri che rappresentano le estensioni scelte dal server durante l'handshake client-server. Questi numeri sono gli indici in base zero nella matrice di estensioni passata a pszExtensions in WebSocketBeginClientHandshake.

[in, out, optional] pulSelectedExtensionCount

Tipo: ULONG*

In input, numero di estensioni allocate in pulSelectedExtensions. Deve essere almeno uguale al numero passato a ulExtensionCount in WebSocketEndClientHandshake. In caso di output riuscito, numero di estensioni restituite in pulSelectedExtensions.

[in, out, optional] pulSelectedSubprotocol

Tipo: ULONG*

In caso di esito positivo dell'output, puntatore a un numero che rappresenta il protocollo secondario scelto dal server durante l'handshake client-server. Questo numero è l'indice in base zero nella matrice di protocolli secondari passati a pszSubprotocols in WebSocketBeginClientHandshake.

Valore restituito

Tipo: HRESULT

Se la funzione ha esito positivo, restituisce S_OK.

Se la funzione ha esito negativo, restituisce uno dei codici di errore seguenti o di sistema definiti in WinError.h.

Codice restituito Descrizione
E_INVALID_PROTOCOL_FORMAT
I dati del protocollo hanno un formato non valido.
E_UNSUPPORTED_SUBPROTOCOL
Il server non accetta alcun protocollo secondario specificato dall'applicazione.
E_UNSUPPORTED_EXTENSION
Il server non accetta estensioni specificate dall'applicazione.

Commenti

Questa funzione deve essere chiamata per completare l'handshake sul lato client dopo una chiamata precedente a WebSocketBeginClientHandshake. Al termine dell'handshake client-server, l'applicazione può usare le funzioni di sessione.

Requisiti

   
Client minimo supportato Windows 8 [solo app desktop]
Server minimo supportato Windows Server 2012 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione websocket.h
Libreria Websocket.lib
DLL Websocket.dll

Vedi anche

WEB_SOCKET_HTTP_HEADER

WebSocketBeginClientHandshake

WebSocketBeginServerHandshake

WebSocketEndServerHandshake