01.クライアントとサーバーの接続時の処理を作る



サーバー側のファイル、クライアント側のファイルを作成します。
クライアントとサーバーの接続時の処理を作成します。

解説

Nodeを用いて、Webアプリを作成するために、最低限すべきことは以下です。

クライアントとサーバーの接続に関する処理は、以下です。

Node.jsのインストール

Node.js をインストールしていない場合は、まず、Node.js をインストールします。

Node.js がインストール済みかは、「node --version」コマンドで確認できます。

Raspbian の場合の例。


Windows の場合の例。

Webチャットアプリ用のフォルダの作成

Webチャットアプリ用のフォルダとして、「MyChat」というフォルダを作成します。

Node.jsのパッケージ管理の初期化

Node.jsのパッケージのインストールに先立ち、パッケージ管理の初期化をします。

「MyChat」フォルダに移動し、下記コマンドを実行します。



package name : 何も入力せずエンターキーを押します ( mychatとなる )
version : 何も入力せずエンターキーを押します ( 1.0.0となる )
description : 何も入力せずエンターキーを押します (空となる)
entry point : server.js と入力しエンターキーを押します
test command : 何も入力せずエンターキーを押します (既定のtest コマンドが登録される)
git repository : 何も入力せずエンターキーを押します (空となる)
keywords : 何も入力せずエンターキーを押します (空となる)
author : 何も入力せずエンターキーを押します (空となる)
license : 何も入力せずエンターキーを押します (ISCとなる)

Is this OK? : y を入力しエンターキーを押します。

Windows の場合の例。


「MyChat」フォルダに、「package.json」ファイルが生成されます。
「package.json」ファイルの内容は以下のような内容になっています。

Node.jsのパッケージのインストール

「MyChat」フォルダに、Node.jsのパッケージ 「Express」と「Socket.io」 をインストールします。

Webチャットアプリ用のフォルダに移動し、下記コマンドを実行します。





Windows の場合の例(「Express」のインストール)


Windows の場合の例(「socket.io」のインストール)


「node_modules」
「MyChat」フォルダに、「node_modules」フォルダが生成され、フォルダ内に、Node.jsのパッケージ 「Express」と「Socket.io」および関連パッケージがインストールされます。

「package.json」ファイルの内容は以下のような内容になっています。
(dependenciesセクションが追加され、expressとsocket.ioに関する記述が追加されます。)

サーバー起動処理

「MyChat」フォルダに、「server.js」というファイルを作成します。

「server.js」 の内容を以下のようにします。

動作を確認

サーバーを起動します。
「MyChat」フォルダで、下記コマンドを実行します。



「Server on port 1337」と表示されます。

起動したサーバーは、「Ctrl + C」で終了します。

公開フォルダ・ファイルの作成と、公開フォルダの指定

「MyChat」フォルダに、「public」というフォルダを作成します。

「public」フォルダに、「index.html」というウェブページファイルを作成します。

「public/index.html」 の内容を以下のようにします。


「server.js」 の「サーバーの起動」処理の前に、以下の「公開フォルダの指定」処理を追加します。


「server.js」 全体としては、以下のようにします。

動作確認

サーバーを起動します。
「MyChat」フォルダで、下記コマンドを実行します。


ブラウザから、「localhost:1337」にアクセスします。


「My Chat」と表示されます。

起動したサーバーは、「Ctrl + C」で終了します。

クライアントから接続要求と、接続時の処理の作成

「public」フォルダに、「client.js」というファイルを作成します。

「public/client.js」 に、サーバーへの接続要求処理、接続時の処理を記述します。
「public/client.js」 の内容を以下のようにします。


「public/index.html」 の、「body」部の末尾に、以下の「client.js」ファイルを組み込む処理を追加します。


「server.js」 の「公開フォルダの指定」処理の前に、以下の「接続時の処理」を追加します。


「server.js」 全体としては、以下のようにします。

動作確認

サーバーを起動します。
「MyChat」フォルダで、下記コマンドを実行します。


ブラウザから、「localhost:1337」にアクセスします。


Chrome のデベロッパーツール※1の 「Console」に、
「connect」
と表示されます。

※1:Chrome のデベロッパーツールは、
「Chromeの右上の[・・・] > その他のツール > デベロッパーツール」
もしくは「Ctrl + Shift + I」
もしくは「F12」
で開くことができます。


サーバー側では、
「connection」
と表示されます。

起動したサーバーは、「Ctrl + C」で終了します。

ダウンロード

サンプルプログラム

関連ページ

次項目:02.クライアントとサーバーの切断時の処理を