2012-02-22 5 views
1

私は、XMLHttpRequestの使用の前後で保持しなければならない条件を持っていますが、その間は使用できません。例:XMLHttpRequestのすべての終端をキャッチする方法

var running = false; // condition 

function go (callback) 
{ 
    running = true; // condition broken 

    var http = new XMLHttpRequest(); 
    http .open ("GET", url, true); 
    http .onreadystatechange = function() 
    { 
     if (4 == this .readyState) 
     { 
      try 
      { 
       callback (this .responseText); 
      } 
      catch (e) {} 

      running = false; // condition restored 
     } 
    } 
} 

私はrunningはいつも最終的にかかわらず、XMLHttpRequestが出て再生する方法の、falseになることを保証する必要があります。

これで十分ですか、他の事態を確認する必要はありますか?

答えて

1

このチェックで十分です(http://www.w3.org/TR/XMLHttpRequest/)。 readyStateは、データ転送が完了した場合、または転送中に何か問題が発生した場合は4です。

タイムアウトに適切な値を設定してください(デフォルトは0です。タイムアウトはありません)。

関連する問題