最新のネットワーク アプリケーションの増加に伴い、WebSocket テクノロジが非常に普及しています。これは、クライアントとサーバーの間に双方向通信パイプラインを作成できる、TCP プロトコルに基づく長時間接続テクノロジです。この記事では、Linux システムで WebSocket テクノロジを使用して簡単なリアルタイム チャット アプリケーションを作成する方法を説明します。
1. Node.js のインストール
WebSocket を使用するには、まず Linux システムに Node.js をインストールする必要があります。 Node.js は、効率的なリアルタイム Web アプリケーションの作成に役立つサーバーサイド JavaScript ランタイム環境です。以下は、Node.js を Debian/Ubuntu にインストールするコマンドです:
$ sudo apt-get update $ sudo apt-get install nodejs $ sudo apt-get install npm
2. WebSocket サーバーの作成
次に、単純な WebSocket サーバーを作成します。エディターでserver.jsという名前のファイルを作成し、次のコードをそこにコピーします:
const WebSocket = require('ws'); const server = new WebSocket.Server({ port: 8080 }); server.on('connection', function connection(ws) { ws.on('message', function incoming(message) { console.log('received: %s', message); server.clients.forEach(function each(client) { if (client.readyState === WebSocket.OPEN) { client.send(message); } }); }); });
この例では、Node.jsの組み込みWebSocketモジュールを使用して、WebSocketサーバーを作成しました(ポートは8080)。新しいクライアントがサーバーに接続するたびに、そのクライアントの WebSocket インスタンスを作成し、サーバー上でそのメッセージをリッスンします。メッセージを受信するたびに、サーバーはメッセージを各クライアントにブロードキャストします。
3. クライアントの作成
WebSocket テクノロジを使用すると、クライアントとサーバー間の双方向通信を実現できます。この例では、ws というコマンド ライン ツールを使用して WebSocket クライアントを作成します。 Linux システムに ws をインストールするコマンドは次のとおりです。
$ sudo npm install -g ws
エディターで client.js という名前のファイルを作成し、次のコードをそこにコピーします。
const WebSocket = require('ws'); const ws = new WebSocket('ws://localhost:8080'); ws.on('open', function open() { console.log('connected'); }); ws.on('message', function incoming(data) { console.log(data); }); process.stdin.on('data', function incoming(data) { ws.send(data.toString().trim()); });
この例では、 ws モジュールを使用して WebSocket クライアントを作成し、それを以前に作成した WebSocket サーバーに接続しました。接続が確立されると、コンソールに接続済みと出力されます。サーバーからのメッセージはすべてコンソールに出力されます。最後に、クライアントが何らかのデータを入力すると、そのデータがすぐにサーバーに送信されるように、stdin リスナーを設定します。
4. アプリケーションをテストする
ターミナル上で 2 つのウィンドウ (サーバー用とクライアント用) を開きます。サーバー ウィンドウで次のコマンドを実行します。
$ node server.js
クライアント ウィンドウで次のコマンドを実行します。
$ node client.js
これで、クライアント ウィンドウにメッセージを入力し、サーバー ウィンドウで確認できるようになります。すべてのクライアントにブロードキャストされます。逆に、サーバー ウィンドウにデータを入力すると、そのデータがすべてのクライアントに表示されます。
5. 概要
Linux システムで WebSocket テクノロジを使用すると、リアルタイムの双方向通信機能を備えたアプリケーションを作成できます。この記事では、Node.js と ws モジュールを使用して簡単なライブ チャット アプリケーションを作成します。この記事が初心者の方のお役に立てば幸いです!
以上がLinux で WebSocket テクノロジーを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。