Compartir a través de


Función WebSocketEndClientHandshake (websocket.h)

La función WebSocketEndClientHandshake completa el protocolo de enlace del lado cliente.

Sintaxis

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

Parámetros

[in] hWebSocket

Tipo: WEB_SOCKET_HANDLE

Identificador de sesión de WebSocket devuelto por una llamada anterior a WebSocketCreateClientHandle.

[in] pResponseHeaders

Tipo: const PWEB_SOCKET_HTTP_HEADER

Puntero a una matriz de estructuras WEB_SOCKET_HTTP_HEADER que contienen los encabezados de respuesta recibidos por la aplicación.

[in] ulReponseHeaderCount

Tipo: ULONG

Número de encabezados de respuesta en pResponseHeaders.

[in, out, optional] pulSelectedExtensions

Tipo: ULONG*

En la entrada, puntero a una matriz asignada por la aplicación. Si la salida es correcta, puntero a una matriz de números que representan las extensiones elegidas por el servidor durante el protocolo de enlace cliente-servidor. Estos números son los índices de base cero en la matriz de extensiones que se pasa a pszExtensions en WebSocketBeginClientHandshake.

[in, out, optional] pulSelectedExtensionCount

Tipo: ULONG*

En la entrada, número de extensiones asignadas en pulSelectedExtensions. Debe ser al menos igual al número pasado a ulExtensionCount en WebSocketEndClientHandshake. En la salida correcta, número de extensiones devueltas en pulSelectedExtensions.

[in, out, optional] pulSelectedSubprotocol

Tipo: ULONG*

En la salida correcta, puntero a un número que representa el subprotocolo elegido por el servidor durante el protocolo de enlace cliente-servidor. Este número es el índice de base cero en la matriz de subprotocolos que se pasa a pszSubprotocols en WebSocketBeginClientHandshake.

Valor devuelto

Tipo: HRESULT

Si la función se realiza correctamente, devuelve S_OK.

Si se produce un error en la función, devuelve uno de los siguientes o un código de error del sistema definido en WinError.h.

Código devuelto Descripción
E_INVALID_PROTOCOL_FORMAT
Los datos de protocolo tenían un formato no válido.
E_UNSUPPORTED_SUBPROTOCOL
El servidor no acepta ninguno de los sub-protocolos especificados por la aplicación.
E_UNSUPPORTED_EXTENSION
El servidor no acepta extensiones especificadas por la aplicación.

Comentarios

Se debe llamar a esta función para completar el protocolo de enlace del lado cliente después de una llamada anterior a WebSocketBeginClientHandshake. Una vez completado el protocolo de enlace cliente-servidor, la aplicación puede usar las funciones de sesión.

Requisitos

   
Cliente mínimo compatible Windows 8 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2012 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado websocket.h
Library Websocket.lib
Archivo DLL Websocket.dll

Consulte también

WEB_SOCKET_HTTP_HEADER

WebSocketBeginClientHandshake

WebSocketBeginServerHandshake

WebSocketEndServerHandshake