Python でアルゴリズムを作成し、その周りに Web インターフェイスを作成しました。フォームを送信してアルゴリズムを開始したら、実行中のページのデータをプッシュして更新したいと思います。どうすればこれを達成できますか?
1 に答える
Web ページ間でリアルタイムまたは半リアルタイム通信を行うためのオプションは次のとおりです。
HTML の meta refresh タグを使用して、特定の秒後にページを自動的に更新します
<head>
JavaScript と AJAX HTTP GET を使用して更新されたデータを取得します: https://api.jquery.com/jquery.get/
サーバー送信イベントを使用: http://www.html5rocks.com/en/tutorials/eventsource/basics/
WebSocket を使用する: http://www.html5rocks.com/en/tutorials/websockets/basics/
最初のものを除くすべてのアプローチでは、サーバー側の Python の知識に加えて、初歩的な JavaScript のスキルが必要です。後者の 2 つのアプローチでは、リアルタイム通信の高度な理解が推奨されます。したがって、Web 開発に慣れていない場合は、メタ更新タグを選択することをお勧めします。
サーバー側では、長時間実行されるプロセスを処理するプロセスまたはスレッドを開始し、このプロセスで進行状況をデータベースに書き込む必要があります。Web UI 自体が更新されると、データベースから最新の結果が読み取られ、ブラウザーにプッシュ/プルされます。