管理者からスコアを更新するとき、更新せずにクライアントのスコアを自動的に更新したいスクリプトとテクニックを手伝ってくれる人はい ますか
4 に答える
これを行う唯一の方法は、クライアントからサーバーを積極的にポーリングすることです。
データのリクエストでスクリプト サービス ページを呼び出すポーリング スクリプトを作成する必要があります。次に、データが管理ページに保存されると、サービスは次の要求時に最新のスコアを返します。
通常、setInterval と clearInterval を使用します。そのため、ページの読み込み時に、ポーリング関数の呼び出しを setInterval メソッドに割り当て、適切なタイムアウトを設定します (スコアの更新頻度とトラフィックの大きさに応じて 10 秒プラス)。
ポーリングを停止するときはいつでも clearInterval を使用する必要があります。他の回答によると、JS フレームワークは、Xml 形式でも JSON 形式でも、Ajax リクエストを作成するのに役立ちます。タグが「より速い」ことを暗示している場合、JQuery と JSON をお勧めします。
さらに、どのようなフレームワークを使用する場合でも、そのフレームワークを迅速にデプロイするために Google の CDN を使用することを検討してください。
私は Ajax でのサーバー プッシュについて何も知らないので、その方法論が利用可能かどうかを知りたいと思います (私はそれを疑っていますが)。
編集: Google cdn とフレームワークに関する情報を追加しました。HTH、
S
私はそれを使用していませんが、これが「彗星」が解決しようとしているもののようです。これは、サーバーからクライアントにコンテンツをストリーミングする方法であり、基本的には「プッシュ」アプローチです。それはあなたが探しているものかもしれません。
http://ajaxian.com/archives/comet-a-new-approach-to-ajax-applications
AJAx を使用する場合、ページを更新する必要はありません。
AJAX を使用すると、サーバーを呼び出して、ページを更新せずに Web ページの一部に結果を配置できます。
jQuer yを介した AJAXの使用に関する記事がここにあります。
AJAXに関するjQuery のドキュメントも優れています。
サーバーからデータを要求し、結果をページのセクションに追加する例を以下に示します。
$.ajax({
type: "POST",
url: "some.php",
data: "name=John&location=Boston",
success: function(msg){
$("#results").append(msg);
}
});