Condividi tramite


Funzione WebSocketBeginServerHandshake (websocket.h)

La funzione WebSocketBeginServerHandshake avvia l'handshake sul lato server.

Sintassi

HRESULT WebSocketBeginServerHandshake(
  [in]           WEB_SOCKET_HANDLE             hWebSocket,
  [in, optional] PCSTR                         pszSubprotocolSelected,
  [in, optional] PCSTR                         *pszExtensionSelected,
  [in]           ULONG                         ulExtensionSelectedCount,
  [in]           const PWEB_SOCKET_HTTP_HEADER pRequestHeaders,
  [in]           ULONG                         ulRequestHeaderCount,
  [out]          PWEB_SOCKET_HTTP_HEADER       *pResponseHeaders,
  [out]          ULONG                         *pulResponseHeaderCount
);

Parametri

[in] hWebSocket

Tipo: WEB_SOCKET_HANDLE

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

[in, optional] pszSubprotocolSelected

Tipo: PCSTR

Puntatore a un valore del protocollo secondario scelto dall'applicazione. Deve contenere un sottoprotocolo.

[in, optional] pszExtensionSelected

Tipo: PCSTR*

Puntatore a un elenco di estensioni scelte dall'applicazione. Deve contenere un'estensione per ogni voce.

[in] ulExtensionSelectedCount

Tipo: ULONG

Numero di estensioni in pszExtensionSelected.

[in] pRequestHeaders

Tipo: const PWEB_SOCKET_HTTP_HEADER

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

[in] ulRequestHeaderCount

Tipo: ULONG

Numero di intestazioni di richiesta in pRequestHeaders.

[out] pResponseHeaders

Tipo: PWEB_SOCKET_HTTP_HEADER*

In caso di output riuscito, un puntatore a una matrice o a strutture WEB_SOCKET_HTTP_HEADER che contengono le intestazioni di risposta da inviare dall'applicazione.

[out] pulResponseHeaderCount

Tipo: ULONG*

In caso di output riuscito, numero di intestazioni di risposta in pResponseHeaders.

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.

Commenti

Per completare l'handshake sul lato server, le applicazioni devono chiamare WebSocketEndServerHandshake o una delle funzioni di sessione. Al termine dell'handshake client-server, l'applicazione può usare le funzioni di sessione.

Requisiti

Requisito Valore
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

WebSocketEndClientHandshake

WebSocketEndServerHandshake