MessageWebSocket.MessageReceived Ereignis
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ein Ereignis, das angibt, dass eine Nachricht im MessageWebSocket -Objekt empfangen wurde.
// 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)
Ereignistyp
Hinweise
Alle Nachrichtenverarbeitungs- und Verbindungsfehler werden über die Methoden "GetDataReader " und "GetDataStream" kommuniziert. Wenn eine dieser Methoden eine Ausnahme auslöst, gibt sie an, dass entweder die zugrunde liegende Verbindung beschädigt ist oder der Server ungültige Daten gesendet hat, z. B. beschädigte HTTP-Header oder eine Nachricht, die die maximale Nachrichtengröße überschreitet. Die geeignete Aktion für den Code, der angesichts einer Ausnahme von diesen Methoden ausgeführt werden soll, besteht darin, einen bekannten guten Zustand wiederherzustellen, indem sie das Websocket schließen, ein neues erstellen und erneut eine Verbindung mit dem Server herstellen.
Alle MessageReceived-Ereignishandler müssen registriert werden, bevor ConnectAsync aufgerufen wird. Danach schlägt der Versuch, einen MessageReceived-Ereignishandler hinzuzufügen oder zu entfernen, mit E_ILLEGAL_METHOD_CALL fehl, auch nachdem der Socket geschlossen wurde.
Eine leere Nachricht führt dazu, dass GetDataReader eine gültige IDataReader-Instanz zurückgibt, wobei "UnconsumedBufferLength " auf "0" festgelegt ist. GetDataStream gibt eine gültige IInputStream-Instanz zurück, die null Bytes liefert.