インターネットテクノロジーの急速な発展により、リアルタイムのデータプッシュは、最新のアプリケーションシステムの不可欠な部分になりました。従来のHTTPプロトコルは広く使用されていますが、リクエスト応答モードはリアルタイムデータ送信のニーズを満たすことはできません。フルダプレックス通信プロトコルとして、WebSocketは、永続的な接続を確立することにより、クライアントとサーバーの間でリアルタイムと双方向で通信できます。この記事では、リアルタイムのデータプッシュおよび実際のコードの例を介してこの機能を実装する方法を示すWebSocketの適用について説明します。
WebSocketは、TCPプロトコルに基づく通信プロトコルです。 HTTPプロトコルとは異なり、クライアントとサーバーの間に継続的な双方向通信接続を確立できます。 WebSocketの出現は、リアルタイムのデータプッシュでHTTPプロトコルの制限を解決し、リアルタイムチャット、株式取引、オンラインゲーム、その他のシナリオで広く使用されています。
WebSocketには幅広いアプリケーションシナリオがあり、以下は典型的なアプリケーションケースです。
リアルタイムのデータプッシュにWebSocketを使用するには、最初にサーバー側にWebSocketサーバーを作成する必要があります。 node.jsを例として使用すると、「WS」モジュールを使用してWebSocketサーバーをすばやく構築できます。簡単な例コードは次のとおりです。
const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 8080 });
wss.on('connection', (ws) => {
console.log('Client connected');
setInterval(() => {
ws.send(new Date().toString());
}, 1000);
ws.on('close', () => {
console.log('Client disconnected');
});
});
コード説明:
クライアントは、ブラウザの内蔵Websocketオブジェクトを使用してサーバーに接続し、リアルタイムでデータを受信できます。これがクライアントコードの例です。
const ws = new WebSocket('ws://localhost:8080');
ws.onopen = () => {
console.log('Connected to WebSocket server');
};
ws.onmessage = (message) => {
console.log('Received message: ' + message.data);
};
ws.onclose = () => {
console.log('Disconnected from WebSocket server');
};
コード説明:
強力なリアルタイム通信プロトコルとして、WebSocketはリアルタイムデータプッシュシナリオで広く使用されています。この記事では、単純なコードを介してサーバーとクライアント間のWebSocket間にリアルタイムデータプッシュを実装する方法を示します。この実用的な例を使用すると、開発者はプロジェクトでWebSockをより効率的に実装し、さまざまなビジネスシナリオに合わせて要件に応じて機能を拡大できます。