「ws」の版間の差分

提供: Node.js/JavaScript入門
移動: 案内検索
(ページの作成:「npm wsは、WebSocketのサーバアプリケーションの開発時に動作確認を行う簡単なツールを提供します。 '''読み方''' ;ws:だ...」)
 
 
行1: 行1:
npm [[ws]]は、[[WebSocket]]のサーバアプリケーションの開発時に動作確認を行う簡単なツールを提供します。
+
[[node.js]]の[[ws]]は、[[npm]]パッケージとして提供される[[WebSocket]]ライブラリです。[[WebSocket]]の実装を簡単に実現できます。[[ws]]パッケージで提供される[[wscat]]は、netcat(ncat,nc)ライクなコマンドです
 +
[[ws]]は、[[WebSocket]]のサーバアプリケーションの開発時に動作確認を行う簡単なツール([[wscat]])を提供します。
  
 
'''読み方'''
 
'''読み方'''
行6: 行7:
  
 
== 概要 ==
 
== 概要 ==
 +
[[node.js]]の[[ws]]は、[[npm]]パッケージとして提供される[[WebSocket]]ライブラリです。[[WebSocket]]の実装を簡単に実現できます。[[ws]]パッケージで提供される[[wscat]]は、netcat(ncat,nc)ライクなコマンドです。サーバモードとクライアントモードを持っています。[[WebSocket]]サーバやクライアントを実装するときのデバッグやテストに利用できます。
  
 
== インストール ==
 
== インストール ==
行27: 行29:
 
├── commander@2.1.0
 
├── commander@2.1.0
 
└── nan@1.0.0
 
└── nan@1.0.0
 +
</syntaxhighlight>
 +
== 使い方 ==
 +
=== WebSocketサーバの実装 ===
 +
==== ws_server1.js ====
 +
[[WebSocket]]クライアントから送信されてきたメッセージをコンソールに表示するだけのプログラムです。
 +
<syntaxhighlight lang="javascript">
 +
/*
 +
* ws_server1.js
 +
* Copyright (C) 2014 kaoru <kaoru@bsd>
 +
*/
 +
var WebSocketServer = require('ws').Server;
 +
var wss = new WebSocketServer({port: 8080});
 +
wss.on('connection', function(ws) {
 +
        ws.on('message', function(message) {
 +
                console.log('received: %s', message);
 +
        });
 +
        ws.send('something');
 +
});
 +
</syntaxhighlight>
 +
==== 実行 ====
 +
 +
サーバの起動とメッセージ受信時の例です。
 +
<syntaxhighlight lang="bash">
 +
$ node ws_server1.js
 +
received: hello
 +
</syntaxhighlight>
 +
 +
クライアントからサーバに接続します。hello と入力し、エンターを押すと、サーバ側へ送信されます。
 +
<syntaxhighlight lang="bash">
 +
$ wscat -c ws://127.0.0.1:8080
 +
connected (press CTRL+C to quit)
 +
< something
 +
> hello
 +
>
 +
</syntaxhighlight>
 +
=== WebSocketクライアントの実装 ===
 +
[[WebSocket]]サーバに接続して、メッセージを送信するだけのプログラムです。
 +
==== ws_client1.js ====
 +
<syntaxhighlight lang="javascript">
 +
/*
 +
* ws_client1.js
 +
* Copyright (C) 2014 kaoru <kaoru@bsd>
 +
*/
 +
var WebSocket = require('ws');
 +
var ws = new WebSocket('ws://127.0.0.1:8080');
 +
ws.on('open', function() {
 +
        var now = new Date();
 +
        ws.send('hello, ' + now);
 +
        ws.close();
 +
});
 +
</syntaxhighlight>
 +
==== 実行 ====
 +
事前に[[WebSocket]]サーバを[[wscat]]で実行しておきます。
 +
<syntaxhighlight lang="bash">
 +
$ wscat -l 8080
 +
</syntaxhighlight>
 +
 +
クライアントの実装方法は、以下の通りです。
 +
<syntaxhighlight lang="bash">
 +
$ node ws_client1.js
 +
</syntaxhighlight>
 +
 +
[[WebSocket]]サーバ[[wscat]]は、以下のような表示をします。
 +
<syntaxhighlight lang="bash">
 +
$ wscat -l 8080
 +
listening on port 8080 (press CTRL+C to quit)
 +
client connected
 +
< hello, Sat Sep 06 2014 20:40:44 GMT+0900 (JST)
 +
disconnected
 
</syntaxhighlight>
 
</syntaxhighlight>
 
== 関連項目 ==
 
== 関連項目 ==
 
* [[wscat]]
 
* [[wscat]]
 +
* [[WebSocket]]
 +
* [[iocat]]
 
<!-- vim: filetype=mediawiki
 
<!-- vim: filetype=mediawiki
 
-->
 
-->

2014年9月6日 (土) 20:45時点における最新版

node.jswsは、npmパッケージとして提供されるWebSocketライブラリです。WebSocketの実装を簡単に実現できます。wsパッケージで提供されるwscatは、netcat(ncat,nc)ライクなコマンドです wsは、WebSocketのサーバアプリケーションの開発時に動作確認を行う簡単なツール(wscat)を提供します。

読み方

ws
だぶるえす

概要

node.jswsは、npmパッケージとして提供されるWebSocketライブラリです。WebSocketの実装を簡単に実現できます。wsパッケージで提供されるwscatは、netcat(ncat,nc)ライクなコマンドです。サーバモードとクライアントモードを持っています。WebSocketサーバやクライアントを実装するときのデバッグやテストに利用できます。

インストール

$ sudo npm install -g ws
$ sudo npm install -g ws
/usr/local/bin/wscat -> /usr/local/lib/node_modules/ws/bin/wscat
 
> ws@0.4.32 install /usr/local/lib/node_modules/ws
> (node-gyp rebuild 2> builderror.log) || (exit 0)
 
gmake: ディレクトリ `/usr/local/lib/node_modules/ws/build' に入ります
  CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
gmake: ディレクトリ `/usr/local/lib/node_modules/ws/build' から出ます
ws@0.4.32 /usr/local/lib/node_modules/ws
├── tinycolor@0.0.1
├── options@0.0.5
├── commander@2.1.0
└── nan@1.0.0

使い方

WebSocketサーバの実装

ws_server1.js

WebSocketクライアントから送信されてきたメッセージをコンソールに表示するだけのプログラムです。

/*
 * ws_server1.js
 * Copyright (C) 2014 kaoru <kaoru@bsd>
 */
var WebSocketServer = require('ws').Server;
var wss = new WebSocketServer({port: 8080});
wss.on('connection', function(ws) {
        ws.on('message', function(message) {
                console.log('received: %s', message);
        });
        ws.send('something');
});

実行

サーバの起動とメッセージ受信時の例です。

$ node ws_server1.js
received: hello

クライアントからサーバに接続します。hello と入力し、エンターを押すと、サーバ側へ送信されます。

$ wscat -c ws://127.0.0.1:8080
connected (press CTRL+C to quit)
< something
> hello
>

WebSocketクライアントの実装

WebSocketサーバに接続して、メッセージを送信するだけのプログラムです。

ws_client1.js

/*
 * ws_client1.js
 * Copyright (C) 2014 kaoru <kaoru@bsd>
 */
var WebSocket = require('ws');
var ws = new WebSocket('ws://127.0.0.1:8080');
ws.on('open', function() {
        var now = new Date();
        ws.send('hello, ' + now);
        ws.close();
});

実行

事前にWebSocketサーバをwscatで実行しておきます。

$ wscat -l 8080

クライアントの実装方法は、以下の通りです。

$ node ws_client1.js

WebSocketサーバwscatは、以下のような表示をします。

$ wscat -l 8080
listening on port 8080 (press CTRL+C to quit)
client connected
< hello, Sat Sep 06 2014 20:40:44 GMT+0900 (JST)
disconnected

関連項目