WebSocketに触れてみる
chakemiです。週末ってことで軽く酔っ払っております。
今日は最近話題(?)のWebSocketに触れてみたいと思います。
構築環境
- CentOS5.5
WebSocketに触れてみるといったものの通信規格でしかないので、クライアントはプロトコルに対応しているchromeあたりでいいとしてサーバー側をどうしようかと悩みましたが、流行ってそうなnode.jsとwebsocket-serverパッケージを使用したいと思います。
インストールに必要なパッケージを入れます。
1 2 3 |
|
node.jsをインストールします。
1 2 3 4 5 6 7 8 9 |
|
※ここで4つほど足りないヘッダーファイルが出てきますが華麗にスルー。(4つ以上でるようだったら何かが足りないです)
1 2 |
|
無事、インストールが完了したことを確認するために、バージョン確認のコマンドを打っときます。
1 2 |
|
次に、Node Package Managerのインストールをします。
1 2 3 |
|
npmを使ってwebsocket-serverをインストール
1 2 |
|
これで準備は完了です。
では、簡単な処理を試してみたいと思います。
どちらもJavaScriptでコーディング出来るって利点がありますが、そもそも自分はJavaScriptなんて書くことないんでメリット感じません。。。
node.jsは対話型の評価環境を提供しているということで、node.jsのプロンプトを起動します。
1 2 |
|
あとはここにスクリプトを入力し、実行します。
1 2 3 |
|
これで、コネクション接続準備が出来ましたので、chromeのJavaScriptコンソールを開いて、サーバに接続してみます。
1
|
|
接続がうまく出来てれば、サーバ側コンソールに下のように表示されます。
1
|
|
これで、サーバ-クライアント間のWebSocket通信が確立されましたので、通信のやり取りを試してみたいと思います。 サーバ側から接続クライアントへブロードキャストします。
1
|
|
chromeのJavaScriptコンソールに「 test from Server 」と表示されましたw
今度は、クライアント側からサーバへデータを送ります。
1
|
|
サーバコンソールに「 test from Client 」と表示され成功!
とりあえず、無事接続が確認出来たとこで、簡単なチャットサービスでもつくってみようか検討してみたいと思います。