Partager via


Fonction WebSocketEndClientHandshake (websocket.h)

La fonction WebSocketEndClientHandshake termine l’établissement d’une liaison côté client.

Syntaxe

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

Paramètres

[in] hWebSocket

Type : WEB_SOCKET_HANDLE

Handle de session WebSocket retourné par un appel précédent à WebSocketCreateClientHandle.

[in] pResponseHeaders

Type : const PWEB_SOCKET_HTTP_HEADER

Pointeur vers un tableau de structures WEB_SOCKET_HTTP_HEADER qui contiennent les en-têtes de réponse reçus par l’application.

[in] ulReponseHeaderCount

Type : ULONG

Nombre d’en-têtes de réponse dans pResponseHeaders.

[in, out, optional] pulSelectedExtensions

Type : ULONG*

Lors de l’entrée, pointeur vers un tableau alloué par l’application. En cas de sortie réussie, pointeur vers un tableau de nombres qui représentent les extensions choisies par le serveur pendant la négociation client-serveur. Ces nombres sont les index de base zéro dans le tableau d’extensions transmis à pszExtensions dans WebSocketBeginClientHandshake.

[in, out, optional] pulSelectedExtensionCount

Type : ULONG*

En entrée, nombre d’extensions allouées dans pulSelectedExtensions. Ce nombre doit être au moins égal au nombre passé à ulExtensionCount dans WebSocketEndClientHandshake. En cas de sortie réussie, nombre d’extensions retournées dans pulSelectedExtensions.

[in, out, optional] pulSelectedSubprotocol

Type : ULONG*

En cas de sortie réussie, pointeur vers un nombre qui représente le sous-protocole choisi par le serveur pendant la négociation client-serveur. Ce nombre est l’index de base zéro dans le tableau de sous-protocoles passé à pszSubprotocols dans WebSocketBeginClientHandshake.

Valeur retournée

Type : HRESULT

Si la fonction réussit, elle retourne S_OK.

Si la fonction échoue, elle retourne l’un des codes d’erreur système suivants ou définis dans WinError.h.

Code de retour Description
E_INVALID_PROTOCOL_FORMAT
Le format des données de protocole n’était pas valide.
E_UNSUPPORTED_SUBPROTOCOL
Le serveur n’accepte aucun des sous-protocoles spécifiés par l’application.
E_UNSUPPORTED_EXTENSION
Le serveur n’accepte pas les extensions spécifiées par l’application.

Remarques

Cette fonction doit être appelée pour terminer l’établissement d’une liaison côté client après un appel précédent à WebSocketBeginClientHandshake. Une fois la négociation client-serveur terminée, l’application peut utiliser les fonctions de session.

Configuration requise

   
Client minimal pris en charge Windows 8 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2012 [applications de bureau uniquement]
Plateforme cible Windows
En-tête websocket.h
Bibliothèque Websocket.lib
DLL Websocket.dll

Voir aussi

WEB_SOCKET_HTTP_HEADER

WebSocketBeginClientHandshake

WebSocketBeginServerHandshake

WebSocketEndServerHandshake