MessageWebSocket.MessageReceived 事件
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
事件,指出 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 實例。