35

次の jQuery JSONP リクエストを使用して、リソースのステータスを URL で確認しています。リソースが利用できない場合、またはサーバーがダウンしている場合、私のajaxFail()関数は表示を更新します。

function fetchServerStatus(service, host)
{
    var port = serverStatus[service].port;
    $.ajax({
        url: "http://" + host + ":" + port + "/admin/server/status",
        dataType: "jsonp",
        timeout: 1000,
        error: ajaxFail,
        fail: ajaxFail,
        success: ajaxDone,
        done: ajaxDone,
        complete: ajaxAlways,
        always: ajaxAlways
    });
}

私が抱えている問題は、コンソールに何も記録しないfailおよびのハンドラーを宣言しているにもかかわらず、jQuery は常に失敗した要求をコンソールに記録することです。errorリソースが長時間利用できない場合、これにより巨大なコンソール ログが作成され、最終的にブラウザー プロセス (私の場合は Chrome) がクラッシュします。

これを止める方法はありますか?

4

2 に答える 2

53

Chrome のコンソールのログ エントリは、HTTP リクエストが処理されたときの Chrome の動作であり、jQuery や ajax(XMLHttpRequest) の問題ではなく、<img>or<link>タグでもこの問題が発生する可能性があります。

唯一の選択肢は、サーバー側のコードを修正して ajax のエラー (404 が見つからない、コンテンツ タイプが間違っているなど) が発生しないようにすることです。そのため、コンソールに記録されたコンテンツに基づいて、より良い解決策が見つかる可能性があります。提供してください。コンソールの正確なロギング メッセージ。

于 2012-08-14T09:12:20.393 に答える