すべてが ajax にある重いアプリがあります。
現在、ページの読み込み時に 10 以上の ajax リクエストが発生し、そのうちのいくつかは不明な理由でランダムに失敗します。
これらのリクエストが失敗した理由を知る方法はありますか?
エラー内のエラーをキャッチできます: {} ケース 、失敗した場合、またはお勧めできない場合 (ループを回避する)、Ajax 関数を再度呼び出す必要がありますか?
これは、すべてのリクエストを処理するために使用する Ajax 関数です。
function ajax(aurl,dataType,requestData,successListener,compelteListener,errorListener,async) {
var $xhr=null;
async = typeof async !== 'undefined' ? async : true;
if($.ajax) {
$xhr=$.ajax({
type: 'post',
url : aurl,
async : async,
dataType : dataType,
data:requestData,
success: function(response){
checkAjaxResponse(null,response,successListener,errorListener);
},
complete:compelteListener,
error:function(response){
checkAjaxResponse(null,response,errorListener);
}
});
}else {
alert("jquery not found ..");
}
return $xhr;
}
更新 1:
エラー内の応答で console.log を実行すると、次のようになります。
{"readyState":0,"responseText":"","status":0,"statusText":"error"}
更新 2:
Apacheログを見ると、多くのことがわかります:
[notice] Parent: child process exited with status 255 -- Restarting.
また、ajax リクエストを次のように変更しました。
error:function(response){
ajax(aurl,dataType,requestData,successListener,compelteListener,errorListener,async);
}
しかし、Ajax が常に失敗すると、システムがクラッシュする可能性があります...
アップデート #3
本番環境でこれらのエラーがないため、WAMPの問題だと思います。
とにかく、あなたの努力に感謝します!