语言

MessageWebSocket.MessageReceived 活动

定义

指示在 MessageWebSocket 对象上收到消息的事件。

// Register
event_token MessageReceived(TypedEventHandler<MessageWebSocket, MessageWebSocketMessageReceivedEventArgs const&> const& handler) const;

// Revoke with event_token
void MessageReceived(event_token const* cookie) const;

// Revoke with event_revoker
MessageWebSocket::MessageReceived_revoker MessageReceived(auto_revoke_t, TypedEventHandler<MessageWebSocket, MessageWebSocketMessageReceivedEventArgs const&> const& handler) const;
public event TypedEventHandler<MessageWebSocket,MessageWebSocketMessageReceivedEventArgs> MessageReceived;
function onMessageReceived(eventArgs) { /* Your code */ }
messageWebSocket.addEventListener("messagereceived", onMessageReceived);
messageWebSocket.removeEventListener("messagereceived", onMessageReceived);
- or -
messageWebSocket.onmessagereceived = onMessageReceived;
Public Custom Event MessageReceived As TypedEventHandler(Of MessageWebSocket, MessageWebSocketMessageReceivedEventArgs) 

事件类型

注解

所有消息处理和连接相关错误都通过 GetDataReader 和 GetDataStream 方法进行通信。 如果上述任一方法引发异常,则表示基础连接已损坏,或者服务器发送了无效数据,例如损坏的 HTTP 标头或超过最大消息大小的消息。 要面对这些方法的异常,代码要采取的适当操作是,通过关闭 Websocket、创建新代码并重新连接到服务器来重新建立已知良好状态。

在调用 ConnectAsync 之前,必须注册所有 MessageReceived 事件处理程序。 之后,即使套接字已关闭,尝试添加或删除 MessageReceived 事件处理程序也会失败并出现E_ILLEGAL_METHOD_CALL

空消息导致 GetDataReader 返回一个有效的 IDataReader 实例, 其中 UnconsumedBufferLength 设置为 0。 GetDataStream 返回一个生成零字节的有效 IInputStream 实例。

适用于