Compartilhar via


Função WebSocketBeginClientHandshake (websocket.h)

A função WebSocketBeginClientHandshake inicia o handshake do lado do cliente.

Sintaxe

HRESULT WebSocketBeginClientHandshake(
  [in]           WEB_SOCKET_HANDLE             hWebSocket,
  [in, optional] PCSTR                         *pszSubprotocols,
  [in]           ULONG                         ulSubprotocolCount,
  [in, optional] PCSTR                         *pszExtensions,
  [in]           ULONG                         ulExtensionCount,
  [in, optional] const PWEB_SOCKET_HTTP_HEADER pInitialHeaders,
  [in]           ULONG                         ulInitialHeaderCount,
  [out]          PWEB_SOCKET_HTTP_HEADER       *pAdditionalHeaders,
  [out]          ULONG                         *pulAdditionalHeaderCount
);

Parâmetros

[in] hWebSocket

Tipo: WEB_SOCKET_HANDLE

Identificador de sessão WebSocket retornado por uma chamada anterior para WebSocketCreateClientHandle.

[in, optional] pszSubprotocols

Tipo: PCSTR*

Ponteiro para uma matriz de subprocursos escolhidos pelo aplicativo. Depois que o handshake cliente-servidor for concluído, o aplicativo deverá usar o subprocurador retornado por WebSocketEndClientHandshake. Deve conter um subprotocol por entrada.

[in] ulSubprotocolCount

Tipo: ULONG

Número de subpro protocolos em pszSubprotocols.

[in, optional] pszExtensions

Tipo: PCSTR*

Ponteiro para uma matriz de extensões escolhidas pelo aplicativo. Depois que o handshake cliente-servidor for concluído, o aplicativo deverá usar a extensão retornada por WebSocketEndClientHandshake. Deve conter uma extensão por entrada.

[in] ulExtensionCount

Tipo: ULONG

Número de extensões em pszExtensions.

[in, optional] pInitialHeaders

Tipo: const PWEB_SOCKET_HTTP_HEADER

Ponteiro para uma matriz de estruturas de WEB_SOCKET_HTTP_HEADER que contêm os cabeçalhos de solicitação a serem enviados pelo aplicativo. A matriz deve incluir o cabeçalho HTTP do host , conforme definido no RFC 2616.

[in] ulInitialHeaderCount

Tipo: ULONG

Número de cabeçalhos de solicitação em pInitialHeaders.

[out] pAdditionalHeaders

Tipo: PWEB_SOCKET_HTTP_HEADER

Na saída bem-sucedida, ponteiro para uma matriz de estruturas WEB_SOCKET_HTTP_HEADER que contêm os cabeçalhos de solicitação a serem enviados pelo aplicativo. Se algum desses cabeçalhos tiver sido especificado em pInitialHeaders, o cabeçalho deverá ser substituído.

[out] pulAdditionalHeaderCount

Tipo: ULONG*

Na saída bem-sucedida, número de cabeçalhos de resposta em pAdditionalHeaders.

Retornar valor

Tipo: HRESULT

Se a função for bem-sucedida, ela retornará S_OK.

Se a função falhar, ela retornará um código de erro do sistema definido em WinError.h.

Comentários

Para concluir o handshake do lado do cliente, os aplicativos devem chamar WebSocketEndClientHandshake. Depois que o handshake cliente-servidor for concluído, o aplicativo poderá usar as funções de sessão.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2012 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho websocket.h
Biblioteca Websocket.lib
DLL Websocket.dll

Confira também

WEB_SOCKET_HTTP_HEADER

WebSocketBeginServerHandshake

WebSocketEndClientHandshake

WebSocketEndServerHandshake