WebSocketBeginServerHandshake 函数开始服务器端握手。
语法
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
);
参数
[in] hWebSocket
先前调用 WebSocketCreateServerHandle 返回的 WebSocket 会话句柄。
[in, optional] pszSubprotocolSelected
类型: PCSTR
指向应用程序选择的子协议值的指针。 必须包含一个子协议。
[in, optional] pszExtensionSelected
类型: PCSTR*
指向应用程序选择的扩展列表的指针。 每个条目必须包含一个扩展。
[in] ulExtensionSelectedCount
类型: ULONG
pszExtensionSelected 中的扩展数。
[in] pRequestHeaders
类型: const PWEB_SOCKET_HTTP_HEADER
指向包含应用程序接收的请求标头的 WEB_SOCKET_HTTP_HEADER 结构的数组的指针。
[in] ulRequestHeaderCount
类型: ULONG
pRequestHeaders 中的请求标头数。
[out] pResponseHeaders
成功输出时,指向包含应用程序要发送的响应标头的数组或 WEB_SOCKET_HTTP_HEADER 结构的指针。
[out] pulResponseHeaderCount
类型: ULONG*
成功输出时, pResponseHeaders 中的响应标头数。
返回值
类型: HRESULT
如果函数成功,则返回 S_OK。
如果函数失败,它将返回以下代码之一或 WinError.h 中定义的 系统错误代码 之一。
返回代码 | 说明 |
---|---|
|
协议数据的格式无效。 |
注解
若要完成服务器端握手,应用程序必须调用 WebSocketEndServerHandshake 或任何会话函数。 客户端-服务器握手完成后,应用程序可以使用会话函数。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 8 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2012 [仅限桌面应用] |
目标平台 | Windows |
标头 | websocket.h |
Library | Websocket.lib |
DLL | Websocket.dll |