IE10 / IE11 Abort Post Ajax Request Po wyczyszczeniu pamięci podręcznej z błędem „Błąd sieci 0x2ef3”

SCRIPT7002: XMLHttpRequest: Błąd sieci 0x2ef3, Nie można ukończyć operacji z powodu błędu 00002ef3

Brak aktualnego rozwiązania w tej chwili.

Aktualizacja: Zauważono również na IE11.

Po coraz więcej badań przychodzę z następującymi wynikami:

Problem jest specyficzny dla mojej aplikacji, nie dzieje się to na Facebooku.Problem nie ma nic wspólnego z maksymalną liczbą żądań na hosta (zrobiłem przykładową stronę, która zalała serwer, IE10 jest w stanie obsłużyć do 8-10 req w tym samym czasie, wewnątrz mojej aplikacji próbowałem również szeregowo żądać ajax , to także się nie udało).Problem jest specyficzny dla żądań POST.Problem nie jest specyficzny dla używanej biblioteki JS (próbowałem bezpośrednio XMLHttpRequest z konsoli, ale także nie).Błąd wystąpił po wyzwoleniu xhr.send (), xhr.readyState = 4 i xhr.onreadystatechange.Błąd nie jest związany z żadnym rodzajem zawartości, właściwymi żądaniami ani konfiguracją serwera. Jest tylko klientem, żądanie strony zastępczej nie powiedzie się, z minimalnym XHR, tylko xhr.open i xhr.send.Stało się to głównie po wyczyszczeniu pamięci podręcznej przeglądarki.Wykonanie żądania GET przed POST nie rozwiązuje tego problemu.

Moje pytania to:

Jak pamięć podręczna przeglądarki może wpływać na żądania POST ajax?Czy jakikolwiek organ ma kontakt z programistami IE, aby poinformować nas, do czego ten błąd „Błąd sieci 0x2ef3” został zmapowany?

Na razie tymczasowe rozwiązanie, które wykonuję, jest po prostu ponawiane przez maksymalnie 3 razy, jeśli kod statusu HTTP wynosił zero. Ale jest to bardzo brzydkie, ponieważ nawet żądania wysyłania czasami nie powiodły się i staje się powolne dla tych żądań z ponowną próbą, czasami zajmuje to dodatkowe 100 ms.

Kroki ku reprodukcji:

Upewnij się, że fiddler lub proxy są wyłączone.http://ie10.laiths.name/#!loginOtwórz konsolę IE10, usuń pamięć podręczną przeglądarki.Spróbuj tego nieprawidłowego loginu: [email protected]/randomPo 3-4 razy (clear-cache / invalid-login) zobaczysz ten błąd: SCRIPT7002: XMLHttpRequest: Błąd sieci 0x2ef3, Nie można ukończyć operacji z powodu błędu 00002ef3.

Moja wersja IE:

Win7 IE10 Wersja: 10.0.9200.16618Wersja aktualizacji: 10.0.6 (KB2838727)

Na razie rozwiązuję to, ponawiając próbę maksymalnie 3 razy, jeślibrowser is IE10 &&Request is POST &&HTTP status code is 0.

Byłbym wdzięczny, gdyby ktoś mógł mi pomóc usunąć moje brzydkie rozwiązanie, ponieważ dzięki takiemu rozwiązaniu, nawet jeśli żądanie trafi do serwera i zwróci 0, również spróbuję ponownie (próbowałem tego uniknąć, mierząc czas między xhr.send i jego wywołanie zwrotne, ale nie jest ono wiarygodne), a jeśli IE10 w comptMode, a jeśli IE11 ma ten sam problem, dodaj do tego wydajność, zajmie to mojemu komputerowi ~ 170 ms między kolejnymi próbami.

questionAnswers(2)

yourAnswerToTheQuestion