5

その機能はいわゆる「サーバー プッシュ」で、Google Wave もこれを利用しているようです。

この概念が Web アプリケーションで実際にどのように機能するかをコード スニペットで説明できる人はいますか?

4

1 に答える 1

2

いくつかの疑似 JavaScript:

<script>
//open connection to the server, updateFunc is called every time server sends stuff
//For example ticker price for Google (GOOG)
var connection = CometLibrary.subscribe("http://server", "GOOG", updateFunc);

//data is JSON-encoded
function upudateFunc(data) {
  var elem = $("#GOOG .last");
  if (elem.value < data.last)
    elem.css("color", "green");
  else (elem.value > data.last)
    elem.css("color", "red");
  elem.value = data.last;
}

</script>
<span id="GOOG">GOOG: <span class="last"></span></span>

したがって、上記のコードはサーバーへの永続的な接続を確立し、サーバーで更新があるたびにコールバック関数が呼び出されます。価格は上下すると色が変わり、変化がなければ元の色のままです。

これに代わる方法として、インターバル タイマーで数秒ごとに AJAX リクエストを作成する方法があります。これには、接続の確立と破棄のオーバーヘッドがあります。

于 2010-01-19T11:20:37.660 に答える