0

サーバー上でいくつかの計算を実行しようとしています。このために、クライアントは最初に Javascript を介してキャプチャするデータを入力します。ここで、このデータを送信するために XMLHttpRequest をサーバーに送信します。計算に 1 時間かかり、クライアントがシステムを離れるか、システムの電源を切るとします。

実際には、おそらくクライアント側からのポーリングを使用して、結果が利用可能かどうかを判断します。しかし、これをコールバックの形で実装できる方法はありますか? たとえば、次回クライアントがログインしたときに、クライアント側の Javascript に連絡して結果を渡すだけです... これにはすべて、クライアント側に何らかのWebサーバーが必要であると考えていますが、これを行うためのより良いアプローチがあるかどうか疑問に思っていました.

4

1 に答える 1

1

最善の策は、ユーザーが Web ページにアクセスしたときにポーリングすることです。

私が似たようなことをしたのは、ポーリング時間を徐々に変更することでした。そのため、数秒から始めて、徐々に間隔を増やしました。あなたの場合、15分後にポーリングし、失敗したときに5分ごとに増やします。ユーザーがブラウザを閉じたら、ポーリングを再開できます。

コールバックが必要な場合は、終了時にメールを送信して、ユーザーに知らせることができます。

また、処理を行っている間は、どこまで進んだか、どれくらい時間がかかるか、進捗状況、ブラウザがロックされていないことなどを示すフィードバックを提供してください。他に何もない場合は、処理が進行している時間を示して、ユーザーに進行状況を知らせます。

于 2009-11-26T03:59:24.397 に答える