2

いくつかのデータを表示する Web ページがあります。データを継続的に更新する python スクリプトがあります (データベースからデータを取得し、html ページに書き込みます)。スクリプトがデータを取得するのに約 5 分かかります。メタ タグを使用して 60 秒ごとに更新するように HTML ページを設定しています。ただし、これを変更して、python スクリプトが更新されるとすぐにページを更新したいので、基本的に、書き込みが完了するとすぐに html ページを更新するコードを python スクリプトに追加する必要があります。

これは可能ですか?

4

1 に答える 1

1

WebSocket のような複雑で現代的なものに飛び込まない限り、サーバーが通知を Web ブラウザーに「プッシュ」する方法はありません。ただし、できることは、ユーザーには見えない方法でクライアントに更新をチェックさせることです。

これには、Javascript の作成と追加ファイルの作成が含まれます。メインの Web ページを作成するときは、Javascript 内にタイムスタンプを追加します (ここでは Unix タイムスタンプが最も簡単です)。また、同じタイムスタンプを Web サーバー上のファイルに書き込みます (これを と呼びましょうupdatetime.txt)。ページで AJAX リクエストを使用して updatetime.txt を取得し、ファイル内の数値がドキュメントの生成時に保存された数値よりも大きいかどうかを確認し、更新された時刻が表示された場合はページを更新します。変更が「即座に」通知される方法を変更できますが、ポーリングの速度を制御できます。

コードの記述についてはあまり詳しく説明しませんが$.ajax()、呼び出しを行うために JQuery を使用するだけです (1 つの関数ではやり過ぎですが)。JS で時間に何かを入れるコツはsetinterval. すでに書かれている両方の使用に関するドキュメントがたくさんあるはずです。

于 2013-07-25T20:49:05.427 に答える