PythonでFlaskを使用することについて質問があります。ゲーム用に作成しているmodのWebサイトを作成し、ライブチャットフィードを入れたいとしましょう。ページが送信された後、ページのコンテンツを変更するにはどうすればよいですか。 ?
3 に答える
それは間違いなく実行可能です。あなたがすることは、ウェブサーバーを呼び出して最近のチャット行でページを更新する JavaScript を含む HTML ページをロードすることです。Socket.io と Gevent を使用したリアルタイム Web チャットのチュートリアルは、開始するのに非常に適した場所です。彼は 1 つの記事でプロセス全体をゼロから説明しています。あなたに役立つかもしれない他の2つのstackoverflowの質問もあります:
チャット アプリケーションのフラスコ固有の実装については、次の 2 つのプロジェクトを確認することをお勧めします。
簡単な答え: できません。
より長い答え: 「ページを送信した」(つまり、HTTP 応答を完了した) と、送信された内容を変更する方法はありません。ただし、JavaScript を使用してサーバーに追加の HTTP 要求を作成し、HTTP 応答を使用して DOM を変更し、ユーザーが見ているページを変更することができます。ライブ チャット フィードを作成する方法はたくさんありますが、どれも複雑すぎて 1 つの Stack Overflow の回答にまとめることができませんが、すべて JavaScript を使用していることは確かです。
AJAX、特にjQueryを調べることをお勧めします。
jQuery は ajax リクエストをフラスコ バックエンドに送信してより多くのデータを取得し、新しいデータをフェッチすると、ユーザーのブラウザでページの html コンテンツを変更できます。
例:
$.getJSON("/chat-feed", function(msg){
$("#chat-container").append("<div>" + msg.text + "</div>");
});