私のWebアプリケーションには、JS/jqueryがフロントエンドとして、サーブレットがバックエンドとして含まれています。私はサーブレットに対して、一回の呼び出しでたくさんのことを行うリクエストをしています(例えば、いくつかのpythonスクリプトを実行するシェルスクリプトを呼び出すかもしれません)。サーブレットが要求を処理している間にクライアントの状況を知る方法を教えてください。
サーブレットのdoGet()
メソッドが返される前にクライアントに通知する方法はありますか?
私のWebアプリケーションには、JS/jqueryがフロントエンドとして、サーブレットがバックエンドとして含まれています。私はサーブレットに対して、一回の呼び出しでたくさんのことを行うリクエストをしています(例えば、いくつかのpythonスクリプトを実行するシェルスクリプトを呼び出すかもしれません)。サーブレットが要求を処理している間にクライアントの状況を知る方法を教えてください。
サーブレットのdoGet()
メソッドが返される前にクライアントに通知する方法はありますか?
私はあなたにajax投稿要求を調べることをお勧めします。 beforeSendと呼ばれる素晴らしい機能があります。これは、ユーザーに「読み込み、処理、取得、実行」などを通知することができます。たとえば:AJAX呼び出しでイベントを処理する方法の詳細については
$.ajax({
beforeSend: function(){
// Handle the beforeSend event
},
complete: function(){
// Handle the complete event
}
// ......
});
がここに文書にhttp://api.jquery.com/Ajax_Events/とhttp://api.jquery.com/jquery.ajax/
を指し、プッシュクライアントの通知へのサーバーのWebSocket
の素敵なメカニズムがあります。 Wsエンドポイントを作成し、それをクライアントコードで登録して、サーブレットの操作の進捗状況をクライアントに通知することができます。
beforeSend関数をいくつか使用できますか? – KillBill
私の意見では、システムに何が起こっているのかをユーザに十分に伝えれば、細部の必要はありません。 –