TsgcWebSocketProxyServer › イベント › OnMessage

OnMessage イベント

プロキシがアップストリームに転送する前に、ダウンストリームの WebSocket クライアントがテキストメッセージを送信するたびに発火します。

構文

property OnMessage: TsgcWSMessageEvent;
// TsgcWSMessageEvent = procedure(Connection: TsgcWSConnection; const Text: string) of object

デフォルト値

—

解説

OnMessage は、ダウンストリームの WebSocket クライアントから完全なテキストフレームが受信されると発生します。Text パラメータはデコードされた UTF-8 文字列を持ち、Connection パラメータは送信者のセッションを識別します。プロキシはハンドラーが返った直後にこのペイロードをアップストリーム TCP サーバー(Proxy.Host、Proxy.Port)に中継するため、転送前にメッセージを検査、ログに記録、または変更する便利な場所です。デフォルトで NotifyEvents は neAsynchronous であり、ハンドラーはメインスレッドと同期して実行されます。これにより UI コントロールを安全に更新できます。高スループットのプロキシの場合は、NotifyEvents を neNoSync に設定して接続スレッドでディスパッチし、独自の同期を実装してください。Options.FragmentedMessages が frgOnlyFragmented の場合、このイベントは発生せず、ペイロードは OnFragmented を通じて配信されます。

使用例


procedure OnMessage(Connection: TsgcWSConnection; const Text: string);
begin
  ShowMessage('Message Received from Client: ' + Text);
end;

イベントに戻る