angularjs:timeout funktioniert nicht in der $http-POST-request
Habe ich folgenden Schnipsel in meinen code die eine timeout in Millisekunden für die Anfrage.Aber es wird nicht storniert, auch wenn das Zeitlimit erreicht wird.
var httpURL = {
method : URLobj.method,
url : urlString,
data : data,
withCredentials : true,
headers : URLobj.headers,
timeout:200
};
this.$http(httpURL).success(successFunc).error(errorFunc);
Kann jemand bitte etwas Licht auf, wie dieser timeout-parameter verwendet werden können.Ich bin mit v1.2.26.
- Hat Ihr "successFunc" - handler ausgeführt?
- ja SuccessFunc hingerichtet wird, zu einem späteren Zeitpunkt als die timeout-tiime
- Wenn Sie sich in der Netzwerk-Abschnitt Ihrer web-browser-Entwickler-tools, können Sie den http-Aufruf dauert länger als 200msec?
- ja, es zeigt 12s
- Welche version von angular, die Sie benutzen? Ich finde keine configs "successHandle" und "errorHandle" in 1.4.0-version
- Winkel-1.2.26 ist die benutzte version.
- in der httpURL config json-bitte entfernen Sie die successHandle : successFunc und errorHandle : errorFunc. Es gibt keine solche configs in $http
- aber Sie funktionieren
- Aber du hast eben deine config-Objekt ungültig. Versuchen Sie das timeout, bevor die Erfolgs-und Fehler-Griffe und sehen, wenn es funktioniert?
- Sie arbeiten, weil Sie haben Sie Hinzugefügt .Erfolg und .Fehler Rückrufe bzw.
- danke!!!Ich habe versucht, nach dem entfernen Sie aber timeout wird nicht angewendet
- das funktioniert aber nicht allzu
- Ich hatte
config.timeout = deferred.promise;
in einem meiner interceptor hatte überschrieben, der Wert, den ich eingestellt habe.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wäre dies, wie man erstellen Sie eine $http-Aufruf mit einem timeout
config.timeout = deferred.promise;
in einem meiner interceptor hatte überschrieben, der Wert, den ich eingestellt habe.Ich hatte config.timeout = deferred.Versprechen; in einem meiner interceptor hatte überschrieben, der Wert, den ich eingestellt habe. Kommentieren Sie es aus für mich gearbeitet.
Unter syntax funktioniert