Was bedeutet " Ausstehend " in der Statusspalte auf der Registerkarte " Netzwerk " des Google Chrome Developer-Fensters?
Dies geschieht, wenn mein Seitenskript eine GET-Anforderung ausgibt, deren Antwort Inhaltsheader zum Herunterladen einer CSV-Datei enthält:
Content-type: text/csv;
Content-Disposition: attachment; filename=myfile.csv
Dies funktioniert in FF und IE7 einwandfrei, indem eine CSV-Datei wie erwartet heruntergeladen und eine Dateiauswahl zum Speichern der Datei geöffnet wird, Chrome jedoch nichts unternimmt. Ich habe bestätigt, dass der Server auf die Anfrage antwortet, sodass Chrome die Antwort anscheinend nicht verarbeitet.
Seltsamerweise funktioniert alles wie erwartet, wenn ich die URL in die Adressleiste von Chromes eingebe und drücke.
Zu Ihrer Information: Chrome 10.0.648.204 unter Win-XP
http
google-chrome
Lawrence I. Siden
quelle
quelle
Antworten:
In meinem Fall stellte ich (nach langem Ziehen) fest, dass der Status "Ausstehend" durch die AdBlock-Erweiterung verursacht wurde. Das Bild, das ich nicht laden konnte, hatte das Wort "Anzeige" in der URL, sodass AdBlock es nicht laden konnte.
Das Deaktivieren von AdBlock behebt dieses Problem.
Das Umbenennen der Datei, sodass die URL keine "Anzeige" enthält, behebt sie ebenfalls und ist offensichtlich eine bessere Lösung. Wenn es sich nicht um eine Werbung handelt, sollten Sie sie in diesem Fall so belassen. :) :)
quelle
Ich bekomme dies auch, wenn ich das HTTPS-Plugin überall verwende. Dieses Plugin enthält eine Liste von Websites, die auch https anstelle von http haben. Ich gehe also davon aus, dass die eigentliche Anfrage bereits storniert wird, bevor sie tatsächlich gestellt wird.
Wenn ich zum Beispiel zu http://stackexchange.com gehe, sehe ich in Developer zuerst eine Anfrage mit Status (beendet). Diese Anforderung enthält einige Header, jedoch nur GET, User-Agent und Accept. Auch keine Antwort.
Dann gibt es eine Anfrage an https://stackexchange.com mit vollständigen Headern usw.
Ich gehe also davon aus, dass es für Anfragen verwendet wird, die nicht gesendet werden.
quelle
Ich hatte einige Probleme mit der ausstehenden Anfrage nach MP3-Dateien. Ich hatte eine Liste von MP3-Dateien und einen Player, um sie abzuspielen. Wenn ich eine Datei ausgewählt hätte, die bereits heruntergeladen wurde, würde Chrome die Anforderung blockieren und "Ausstehende Anforderung" auf der Registerkarte "Netzwerk" der Entwicklertools anzeigen.
Alle Versionen von Chrome scheinen betroffen zu sein.
Hier ist eine Lösung, die ich gefunden habe:
Sie fügen einfach eine Dummy-Abfragezeichenfolge am Ende jeder URL hinzu. Dadurch wird Chrome gezwungen, die Datei erneut herunterzuladen.
Ein weiteres Beispiel mit Popcorn-Player (mit jquery):
Das funktioniert bei mir. Tatsächlich wird die Ressource nicht im Cache-System gespeichert. Dies sollte auch für CSV-Dateien funktionieren.
quelle
Ich hatte das gleiche Problem mit OSX Mavericks. Es stellte sich heraus, dass Sophos Antivirus bestimmte Anforderungen blockierte. Nach der Deinstallation war das Problem behoben.
Wenn Sie der Meinung sind, dass dies durch eine Erweiterung verursacht werden könnte, können Sie dies auf einfache Weise testen, indem Sie Chrome mit dem
'--disable-extensions
Flag öffnen, um festzustellen , ob das Problem dadurch behoben wird. Wenn sich das nicht beheben lässt, sollten Sie über den Browser hinaus nachsehen, ob eine andere Anwendung das Problem verursacht, insbesondere Sicherheits-Apps, die sich auf Anforderungen auswirken können.quelle
Der Status "Netzwerk ausstehend" bedeutet, dass sich Ihre Anfrage im Status "Fortschritt" befindet. Sobald es antwortet, wird die Zeit mit der insgesamt verstrichenen Zeit aktualisiert.
Dieses Bild zeigt, dass sich der Netzwerkanruf im Verarbeitungsstatus befindet (ausstehend).
Dieses Bild zeigt die Zeit, die für die Verarbeitung per Netzwerkanruf benötigt wird.
quelle
Ich hatte ein ähnliches Problem mit Application / JSON Ajax-Aufrufen. In ff / IE waren sie in Ordnung. In Chrome im Fenster "Entwicklernetzwerk" war der Status immer (ausstehend), da ein anderer Statuscode zurückgegeben wurde.
In meinem Fall habe ich meine Json-Antwort geändert, um einen HttpStatusCode von 200 zu senden. Dann war Chrome in Ordnung und der Statustext wurde in 200 OK geändert.
Zum Beispiel mit ASP.NET Web Api
quelle
HttpStatusCode
?Gleiches Problem mit Chrome: Ich hatte auf meiner HTML-Seite den folgenden Code:
Aber das
load.js
war immer im Status,pending
wenn man in das Netzwerkfenster schaut.Ich habe eine Problemumgehung mit asynchronem Laden gefunden von
load.js
:Jetzt funktioniert es gut.
quelle
Ich bin auf dieses Problem gestoßen, als ich eine lokale Webanwendung debuggte. Es stellte sich heraus, dass es sich um AVG Antivirus- und Firewall-Einschränkungen handelte. Ich musste eine Ausnahme durch die Firewall zulassen, um den Status "Ausstehend" zu entfernen.
quelle
Die Lösung bestand für mich darin, Folgendes oben in die angeforderte PHP-Datei einzufügen.
quelle
In meinem Fall gibt es ein Update für Chrome, mit dem es nicht geladen wird, bevor Sie den Browser neu starten. Prost
quelle
Ich habe das gleiche Problem festgestellt, als ich bestimmte Bilder von der Seite angefordert habe. Ich verwende JavaScript, um das src-Attribut eines img-Objekts festzulegen. Wenn das Netzwerk schlecht ist, wird es im Netzwerkfenster des Chrome-Entwicklerfensters angezeigt. Ich denke, das liegt an dem schlechten Netzwerk.
quelle