0

現在、サーバーからデータを取得するために jQuery の投稿を行っています。標準的な状況では、大きな JSON が返されます。

この呼び出しを初めて実行するときは、大量の処理時間が必要です (私は最大 15 分を見てきました。処理が完了した後、これらをバックグラウンドで構築し、進行状況をクライアントに中継するワーカー プロセスを作成する計画があります)。これをキャッシュに保存し、JSON をユーザーに返します。

どちらのシナリオでも、まったく同じ JSON をクライアントに返します。唯一の違いは、キャッシュが構築されている場合は数ミリ秒で返され、キャッシュが構築されていない場合、クライアントが受信するまでに長い時間がかかる可能性があることです。応答。

これがサーバー上で実行されている場合、リクエストに時間がかかる場合、クライアントは ajax レスポンスを受信しませんが、サーバーはプロセスを完了し (アクセス ログは 200 statusCode を示します)、キャッシュを保存します。参考までに、私のローカルホストでは、時間に関係なく ajax 応答が常に受信されます (または、これまで見てきたように)。

簡単に言えば ajax で投稿するのですが、時間がかかると投稿のレスポンスが返ってこず、いつまでも待たされることになります。

これは、PHP またはサーバー側の設定のように聞こえますが、問題が見つからないようです。

どんなアイデアや助けも大歓迎です。

4

1 に答える 1

0

ajax リクエストのタイムアウトを増やす必要があるようですね。

タイムアウトはベース jquery ajax メソッドのオプションです - http://api.jquery.com/jQuery.ajax/

于 2011-05-31T08:16:22.930 に答える