Partager via


Fonction WebSocketBeginServerHandshake (websocket.h)

La fonction WebSocketBeginServerHandshake commence l’établissement d’une liaison côté serveur.

Syntaxe

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

Paramètres

[in] hWebSocket

Type : WEB_SOCKET_HANDLE

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

[in, optional] pszSubprotocolSelected

Type : PCSTR

Pointeur vers une valeur de sous-protocole choisie par l’application. Doit contenir un sous-protocole.

[in, optional] pszExtensionSelected

Type : PCSTR*

Pointeur vers une liste d’extensions choisies par l’application. Doit contenir une extension par entrée.

[in] ulExtensionSelectedCount

Type : ULONG

Nombre d’extensions dans pszExtensionSelected.

[in] pRequestHeaders

Type : const PWEB_SOCKET_HTTP_HEADER

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

[in] ulRequestHeaderCount

Type : ULONG

Nombre d’en-têtes de requête dans pRequestHeaders.

[out] pResponseHeaders

Type : PWEB_SOCKET_HTTP_HEADER*

En cas de sortie réussie, un pointeur vers un tableau ou WEB_SOCKET_HTTP_HEADER structures qui contiennent les en-têtes de réponse à envoyer par l’application.

[out] pulResponseHeaderCount

Type : ULONG*

En cas de sortie réussie, nombre d’en-têtes de réponse dans pResponseHeaders.

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.

Remarques

Pour terminer l’établissement d’une liaison côté serveur, les applications doivent appeler WebSocketEndServerHandshake ou l’une des fonctions de session. Une fois la négociation client-serveur terminée, l’application peut utiliser les fonctions de session.

Configuration requise

Condition requise Valeur
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

WebSocketEndClientHandshake

WebSocketEndServerHandshake