プログラミング

WebSocket を使ったサンプルプログラムを作りました

投稿日:2017年7月18日 更新日:

1. はじめに

WebSocket を使ったサンプルページを作りました。Node.js を使っています。

ソースコードは以下に置いてあります。

この中の、src/ws-server.js が本体です。

2. スクリーンショット

3. 動作

やっていることを簡単に説明します。

  1. Node.js に組み込まれている httpモジュールを使って、Webサーバー(ポート番号は8080)を作成します。
  2. websockets/ws を使って、WebSocketサーバー(ポート番号は8081)を作成します。
  3. Webサーバーを開始します。
  4. Webブラウザで、http://localhost:8080 にアクセスします。
  5. テキストフィールドに何か入力して、「WebSocketサーバーに送る」ボタンをクリックします。
  6. WebSocket サーバーは、クライアントからメッセージを受け取ったら、「次のメッセージを受け取りました: {受け取ったメッセージ}」という文字列をクライアントに返してきます。
  7. Webブラウザでは WebSocketサーバーが送ってきたメッセージを、「サーバーからのメッセージ」の下に表示していきます。

※ WebSocketの通信は継続されたままになっています。

4. 大まかな動作イメージ

図.動作イメージ

Webブラウザは、まず Webサーバにアクセスします。
それから、画面上のボタンを押すことによって、WebSocketサーバに文字列を伝達します。
WebSocketサーバーから返事がきます。このやり取りは、WebSocket通信をつないだまま何度も行うことができます。

もう少し細かい図も書きました。こちらでは、ソースコードも交えて説明しています。

📂-プログラミング

執筆者:labo


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

docker

Docker を使って特定のバージョンのPHPコマンドを実行する方法

PHP: Supported Versions を見てみると、現在サポートされているPHPのバージョンは、7.2系統、7.1系統、7.0系統、5.6系統の4種類であることが分かります。PHP: Dow …

WordPress

WordPress で処理を追加したい場合、どこにコードを書けばよいのか?

自分で導入した WordPress でブログを運営していたとします。ある日、WordPress の動作を変更したくなって 調べてみると、ほんの少し PHPのコードを書けば済むことが分かりました(アクシ …

Gentelella の Sidebar を解析してみました

目次1. はじめに2. サイドバーの形態3. サイドバーの形態のスタイル定義4. ページを開いた時のデフォルト5. トグルアイコンをクリックした時の動作6. サイドバー内の各メニュー項目をクリックした …

C言語のポインタを理解するためのお勧め書籍を紹介します

例え話をしないC言語のポインタの説明 | 右や左の旦那様 C言語のポインタについての記事が、はてなブックマークのトップページに載っていました。 私は業務・趣味のどちらにおいても C言語は使いません。し …

Firebase

Firebase を利用する手順

Firebase を利用する手順について説明しています。