HTML5 の優れた新機能の 1 つは WebSocket です。これを使用すると、AJAX リクエストなしでサーバーと通信できるようになります。現在、Bin Go を使用すると、Php 環境のサーバー側で WebSocket を実行し、クライアントを作成し、WebSocket プロトコルを通じてサーバー側の情報を送受信できるようになります。
WebSocket とは何ですか?
WebSocket は、(TCP) インターフェイスでの双方向通信のためのテクノロジであり、PUSH テクノロジ タイプです。同時に、WebSocket は引き続き W3C 標準に基づいています。これまでのところ、Chrome ブラウザと Safari ブラウザの最新バージョンはすでに WebSocket をサポートしています。
WebSocket は何を置き換えるのでしょうか? WebSocket は、Long Polling (PHP サーバー プッシュ テクノロジ) を置き換えることができます。これは興味深い概念です。クライアントはサーバーにリクエストを送信しますが、サーバーは準備ができていないデータには応答しません。その後、クライアントはデータを受信して別のデータを送信します。リクエスト。 。これには利点があります。どちらの接続でも待ち時間が短縮され、接続がすでに開いている場合に新しい接続を作成する必要がなくなります。ただし、ロングポーリングは特別なテクノロジではありません。要求の一時停止が発生する可能性があるため、新しい接続を確立する必要があります。
一部の AJAX アプリケーションは上記の手法を使用します。これは多くの場合、リソース使用率が低いことが原因です。
想像してみてください。事前に接続ポートをいくつか設定しなくても、サーバーが朝に自動的に起動して、データを受信したいクライアントにデータを送信できたら、どんなに素晴らしいことでしょう。 PUSH テクノロジーの世界へようこそ!
ステップ 1: WebSocket サーバーを取得する
このチュートリアルでは、サーバー側の実行やその他の操作ではなく、クライアントの作成に重点を置きます。
Windows 7 で XAMPP を使用して PHP をローカルで実行しています。 phpwebsockets は PHP WebSocket サーバーです。 (私の経験では、このバージョンにはいくつかの小さな問題があります。いくつかの修正を加え、ソース ファイルをアップロードして全員と共有しました) 以下のさまざまなバージョンでも WebSocket を実装できます。1 つが機能しない場合は、他のバージョンを試すことができます。または、以下のチュートリアルを続行してください。
jWebSocket (Java)
ウェブソケットルビー(ルビー)
ソケット IO ノード(node.js)
Apacheサーバーを起動します
ステップ 2: URL とポートを変更する
以前のインストールに基づいてサーバーを変更します。setup.class.php の例を次に示します。
パブリック関数 __construct($host='localhost',$port=8000,$max=100) { $this->createSocket($host,$port); } |
ファイルを参照し、必要に応じて変更を加えます。
ステップ 3: クライアントの作成を開始する
基本的なテンプレートを作成しましょう。これが私の client.php ファイルです。
<頭> <スクリプトソース= "http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"> <本文> WebSocket クライアント例: 「こんにちは」、「名前」、「年齢」、「今日」を試してください |