Timeout für jQuery-AJAX-Anfragen festlegen
Das angegebene Codefragment zeigt eine AJAX-Anfrage mit jQuery, aber manchmal wird die Erfolgsfunktion nicht zuverlässig ausgelöst . Um dieses Problem zu beheben, kann ein Zeitlimit festgelegt werden, um Fehler automatisch zu behandeln, wenn die Anfrage nicht innerhalb der angegebenen Zeit abgeschlossen wird.
Lösung:
So legen Sie ein Zeitlimit für eine fest Bei einer AJAX-Anfrage verwenden Sie die Timeout-Option in der $.ajax-Methode. Diese Option gibt die Zeit in Millisekunden an, bevor die Anforderung als Timeout betrachtet wird. Wenn die Anfrage länger als die angegebene Zeit dauert, wird die Fehlerfunktion mit dem Status „Timeout“ ausgelöst.
$.ajax({ url: "test.html", error: function(){ // Will fire when timeout is reached or other error occurs }, success: function(){ // Do something }, timeout: 3000 // Sets timeout to 3 seconds });
Durch das Setzen der Timeout-Option friert die AJAX-Anfrage die Ausführung nicht mehr auf unbestimmte Zeit ein, wenn die Der Server ist ausgefallen oder reagiert nicht. Die Fehlerfunktion kann dann verwendet werden, um die Zeitüberschreitung zu behandeln und eine Fehlermeldung anzuzeigen oder andere geeignete Maßnahmen zu ergreifen.
Zusätzlich kann die Fehlerfunktion den Parameter textStatus empfangen, der die Art des aufgetretenen Fehlers enthält. Wenn das Timeout erreicht wurde, wird textStatus auf „timeout“ gesetzt.
Das obige ist der detaillierte Inhalt vonWie kann ich verhindern, dass jQuery-AJAX-Anfragen mit einem Timeout einfrieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!