Es muss eine Ajax-Timeout-Bedingung getestet werden
Frage
Wie im Titel erwähnt, habe ich einen Timeout-Callback-Handler bei einem Ajax-Aufruf und möchte diese Bedingung testen können, aber mir fällt sofort nichts ein, wie ich meine Anwendung dazu zwingen kann, diesen Status zu erreichen. Irgendwelche Vorschläge?
Lösung
Zunächst einmal denke ich, dass Sie Ihre Frage klarer formulieren müssen: Welche Technologie verwenden Sie und wo tritt bei diesem Prozess eine Zeitüberschreitung auf – serverseitig oder clientseitig?
Wenn der serverseitige Code lange dauern soll und Sie .NET verwenden, fügen Sie diese Zeile in die Methode ein, die Sie serverseitig aufrufen:
System.Threading.Thread.Sleep(timeoutMilliseconds);
Solange Sie eine ausreichende Zahl verwenden, damit Ihr clientseitiger Code davon ausgeht, dass der Server eine Zeitüberschreitung erlitten hat, sollten Sie in Ordnung sein.
Andere Tipps
Sie können jederzeit ein serverseitiges Skript ausführen, das für einen bestimmten Zeitraum ausgeführt wird.Zum Beispiel:
<?php
sleep(10); //sleep for 10 seconds.
print "This script has finished.";
>
YUI-Verbindungsmanager ermöglicht es Ihnen, eine Verlangsamung Ihres Javascripts einzuführen, um AJAX auf Latenz zu testen.