WebSocketServer
WebSocketServer
クラスを使って、4D で WebSocketサーバーを作成および設定することができます。 4D WebSocketサーバーがアクティブになると、WebSocketConnection
クラス を使用して 4D とクライアント間で WebSocket 接続を開き、使用することができます。
履歴
リリース | 内容 |
---|---|
20 | 追加 |
WebSocket サーバーについて
WebSocketプロトコルは、WebSocketサーバーとクライアント (Webブラウザーなど) の間の双方向通信のチャンネルを提供します。 WebSocketサーバーの詳細については、Wikipedia のページ を参照ください。
参照
4D WebSocketサーバーについては、こちらのブログ記事 も参照ください。
要件
4D で WebSocketサーバーを作成し、扱うには、4Dビルトインクラスを 2つ使用する必要があります。
- このクラス (
4D.WebSocketServer
) は、サーバー自体を管理するためのものです。 4D.WebSocketConnection
クラスを使用して、接続とメッセージを管理します。
さらに、2つのユーザークラスを作成し、コールバック関数を定義する必要があります:
- サーバー接続を処理するためのユーザークラス
- メッセージを処理するためのユーザークラス
接続を維持するため、WebSocketサーバーの作成 は ワーカー 内にておこなう必要があります。
4D Webサーバー を起動しておく必要があります。
例題
この基本的な例では、WebSocketサーバーはメッセージを大文字で返します。
- ワーカーを使用して (必須) WebSocketサーバーを作成し、サーバー接続処理用のユーザークラスをパラメーターとして渡します。
// ユーザークラスのインスタンスを作成します
// これが、サーバーへの接続を処理します
var $handler:cs.myServerHandler
$handler:=cs.myServerHandler.new()
CALL WORKER("WebSocketServer"; Formula(wss:=4D.WebSocketServer.new($handler)))
// WebSocket を変数 (wss) に代入しておくことで
// あとで wss.terminate() の呼び出しが可能になります