WebSocketEndClientHandshake 関数 (websocket.h)
WebSocketEndClientHandshake 関数は、クライアント側ハンドシェイクを完了します。
構文
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
);
パラメーター
[in] hWebSocket
WebSocketCreateClientHandle への以前の呼び出しによって返された WebSocket セッション ハンドル。
[in] pResponseHeaders
型: const PWEB_SOCKET_HTTP_HEADER
アプリケーションが受信した応答ヘッダーを含む WEB_SOCKET_HTTP_HEADER 構造体の配列へのポインター。
[in] ulReponseHeaderCount
種類: ULONG
pResponseHeaders の応答ヘッダーの数。
[in, out, optional] pulSelectedExtensions
種類: ULONG*
入力時に、アプリケーションによって割り当てられた配列へのポインター。 正常に出力された場合、クライアントとサーバーのハンドシェイク中にサーバーによって選択された拡張機能を表す数値の配列へのポインター。 これらの数値は、WebSocketBeginClientHandshake の pszExtensions に渡される拡張機能配列への 0 から始まるインデックスです。
[in, out, optional] pulSelectedExtensionCount
種類: ULONG*
入力時に、 pulSelectedExtensions で割り当てられた拡張機能の数。 これは、WebSocketEndClientHandshake で ulExtensionCount に渡される数値と少なくとも同じである必要があります。 正常に出力された場合、 pulSelectedExtensions で返される拡張機能の数。
[in, out, optional] pulSelectedSubprotocol
種類: ULONG*
正常に出力された場合は、クライアントとサーバーのハンドシェイク中にサーバーによって選択されたサブプロトコルを表す数値へのポインター。 この数値は、WebSocketBeginClientHandshake の pszSubprotocols に渡されるサブプロトコル配列への 0 から始まるインデックスです。
戻り値
型: HRESULT
関数が成功した場合は、S_OK を返します。
関数が失敗した場合は、WinError.h で定義されている次のいずれかの システム エラー コード が返されます。
リターン コード | 説明 |
---|---|
|
プロトコル データの形式が無効でした。 |
|
サーバーは、アプリケーションで指定されたサブプロトコルを受け入れていません。 |
|
サーバーは、アプリケーションで指定された拡張機能を受け入れていません。 |
解説
この関数は、 WebSocketBeginClientHandshake の前回の呼び出し後にクライアント側ハンドシェイクを完了するために呼び出す必要があります。 クライアントとサーバーのハンドシェイクが完了すると、アプリケーションはセッション関数を使用できます。
要件
サポートされている最小のクライアント | Windows 8 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2012 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | websocket.h |
Library | Websocket.lib |
[DLL] | Websocket.dll |