0

アプリケーションのサーバーがまだオンラインであるかどうかを確認する必要があるプロジェクトがあります。長い検索の後、私は機能するスクリプトを見つけました。しかし、完全ではありません。サーバーからネットワークケーブルを抜くと、アプリケーションがサーバーがダウンしていることを認識するのに15秒かかります。

スクリプトはファイルping.htmlを検索し、キャッシュの理由から、ランダム変数をその後に配置する必要がありました:p

誰かが遅延の問題を解決する方法を知っていますか?

function ping(){
           $.ajax({ 
           cache: false,
              url: 'ping.html?myRand=' + guid(), 
              success: function(result){ 
                 $('.conmessage').hide(); 
                 enable();

              },     
              error: function(result){ 
                  $('.conmessage').show();  
                  disable();
              }
           });
        }

    function s4() {
           return (((1+Math.random())*0x10000)|0).toString(16).substring(1);
    }

    function guid() {
           return s4()+s4()+"-"+s4()+"-"+s4()+"-"+s4()+"-"+s4()+s4()+s4();
    }   
4

1 に答える 1

2

ajax呼び出しでtimeoutプロパティ(ミリ秒単位)を使用する必要があると思います。

$.ajax({ 
              cache: false,
              url: 'ping.html?myRand=' + guid(), 
              timeout: 1000,
              success: function(result){ 
                 $('.conmessage').hide(); 
                 enable();

              },     
              error: function(result){ 
                  $('.conmessage').show();  
                  disable();
              }
           });
于 2012-11-11T18:52:39.547 に答える