私は Django を初めて使用し、かなり新しいプログラマーです。私は Django で戦艦アプリを開発しています。html ページに 10X10 ゲーム ボードが既にあり、javascript/jquery を使用すると、これらのボードのコンテンツはユーザーの操作に応じて変化します。ただし、ユーザーが生成したイベントの後にサーバー側のデータを変更するにはどうすればよいですか。たとえば、ユーザーがボードのセルをクリックすると、セルの内容が変化します。しかし、セルの新しい内容を反映するために、ボードのサーバー側のデータを変更したいと考えています。これを行うにはどうすればよいですか?JavaScript ファイル内で Python コードを実行することは可能ですか?
2 に答える
これが$.postメソッドの目的です。次に、サーバー側で、データを受信するその URL のポスト ハンドラーを用意します。
dspeyer が述べたように、jQuery を使用$.post
してメッセージを送信できます。一般に、戦艦アプリは次のように動作する必要があります。
client
- > server
(情報)
server
- > client
(応答)
server
- > opponent
(対戦相手に情報を送信します) (純粋な ajax ソリューションを使用すると問題が発生する可能性があります - ロング ポーリング/他のサーバー プッシュ方式が必要になります)
サーバーがデータをクライアントにプッシュできるように、おそらくロングポーリング/コメット接続。bayeux プロトコルを実装するjQuery Cometプラグインがあります。
Skulptのようなものを使用して、ブラウザで Python コードを実行できますが、それがあなたが探しているものかどうかは疑問です。あなたが望むのは、クライアント側のイベントに応答して実行されるサーバー側のスクリプトだと思います。そのために、クライアントはサーバーにイベントを通知する必要があり(データをURLに投稿するなど)、サーバーはその後、スクリプトを実行できます。