WebSocketBeginClientHandshake 函式 (websocket.h)
WebSocketBeginClientHandshake 函式會開始用戶端交握。
語法
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
);
參數
[in] hWebSocket
先前呼叫 WebSocketCreateClientHandle 所傳回的 WebSocket 會話句柄。
[in, optional] pszSubprotocols
類型: PCSTR*
應用程式所選擇子通訊協議陣列的指標。 用戶端-伺服器交握完成後,應用程式必須使用 WebSocketEndClientHandshake 所傳回的子通訊協定。 每個項目必須包含一個子協定。
[in] ulSubprotocolCount
類型: ULONG
pszSubprotocols 中的子通訊協議數目。
[in, optional] pszExtensions
類型: PCSTR*
應用程式所選擇之延伸模組陣列的指標。 用戶端-伺服器交握完成後,應用程式必須使用 WebSocketEndClientHandshake 所傳回的擴充功能。 每個項目必須包含一個延伸模組。
[in] ulExtensionCount
類型: ULONG
pszExtensions 中的擴充功能數目。
[in, optional] pInitialHeaders
類型: const PWEB_SOCKET_HTTP_HEADER
包含應用程式所要傳送之要求標頭之 WEB_SOCKET_HTTP_HEADER 結構的陣列指標。 陣列必須包含如 RFC 2616 中所定義的主機 HTTP 標頭。
[in] ulInitialHeaderCount
類型: ULONG
pInitialHeaders 中的要求標頭數目。
[out] pAdditionalHeaders
成功輸出時,指向包含應用程式所傳送要求標頭之 WEB_SOCKET_HTTP_HEADER 結構的陣列指標。 如果 pInitialHeaders 中指定了上述任何標頭,則必須取代標頭。
[out] pulAdditionalHeaderCount
類型: ULONG*
成功輸出時, pAdditionalHeaders 中的響應標頭數目。
傳回值
類型: HRESULT
如果函式成功,它會傳回 S_OK。
如果函式失敗,它會傳回 WinError.h 中定義的 系統錯誤碼 。
備註
若要完成用戶端交握,應用程式必須呼叫 WebSocketEndClientHandshake。 用戶端-伺服器交握完成後,應用程式可以使用會話函式。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 8 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2012 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | websocket.h |
程式庫 | Websocket.lib |
Dll | Websocket.dll |