Internet Explorer 10 webové stránky během žádosti XHR zamrzne

Poznámka: Desktopová aplikace Internet Explorer 11 bude 15. června 2022 vyřazena a nebude podporovat (seznam toho, co je v oboru, najdete v častých otázkách). Stejné aplikace a weby IE11, které používáte dnes, se mohou otevřít v Microsoft Edge v režimu Internet Exploreru. Další informace najdete tady.

Příznaky

Zvažte následující scénář:

  • Na určitou webovou stránku můžete přejít pomocí Internet Explorer 10.

  • Webová stránka obsahuje skript, který při otevření webové stránky vytvoří asynchronní požadavek XMLHttpRequest (XHR).

  • Během žádosti XHR zavřete webovou stránku.

  • Odpověď na žádost XHR je větší než 2 kB (včetně dat záhlaví).

V tomto scénáři může dojít ke ztrátě připojení HTTP k danému hostiteli. Když se pak pokusíte přejít na jinou webovou stránku hostitele, může dojít k zablokování sítě. K tomuto problému dochází, když ztratíte maximální počet souběžných připojení k hostiteli.

Poznámka: K tomuto problému dochází v prohlížečích Internet Explorer 7, Internet Explorer 8 a Internet Explorer 9 v Internet Explorer 10.

Řešení

Informace o aktualizaci zabezpečení

Pokud chcete tento problém vyřešit v Internet Exploreru 9 nebo Internet Explorer 10, nainstalujte nejnovější kumulativní aktualizaci zabezpečení pro Internet Explorer. Pokud to chcete udělat, přejděte na následující web Společnosti Microsoft:

http://update.microsoft.com
Poznámky

  • Tato aktualizace pro Internet Explorer 10 byla poprvé součástí následující aktualizace zabezpečení:

    2838727 MS13-047: Kumulativní aktualizace zabezpečení pro Internet Explorer: 11. června 2013

  • Pokud chcete nainstalovat tuto aktualizaci pro Internet Explorer 9, klikněte na následující číslo článku znalostní báze Microsoft Knowledge Base:

    2905733 Internet Explorer ztratí připojení HTTP, když zavřete webovou stránku před obdržením odpovědi XHR.

  • Další technické informace o nejnovější kumulativní aktualizaci zabezpečení pro Internet Explorer najdete na následujících webech společnosti Microsoft:

    http://www.microsoft.com/technet/security/current.aspx

Řešení

Chcete-li tento problém vyřešit, můžete použít jednu z následujících metod:

  1. Změňte žádost XHR na synchronní žádost.

    Poznámka: Toto alternativní řešení je proti doporučeným programovacím postupům a může způsobit zablokování webového prohlížeče, pokud odpověď neexistuje. Další informace najdete v tématu Proč byste měli asynchronně používat XMLHttpRequest.

    Aby se zabránilo Windows připojení k Internetu (WinINet) společně s ajaxem, můžete existující připojení ukončit před zavřením okna.

    Poznámka: Další informace o řešení nevracení připojení najdete v následujícím článku znalostní báze Microsoft Knowledge Base:

    886710 Zdá se, že Internet Explorer přestane reagovat a můžete si také všimnout nevracení paměti v počítači.

  2. Nahraďte metodu window.open metodou window.showModalDialog.

    Všimněte si, že toto alternativní řešení zabraňuje interakci uživatelů s nadřazeným oknem, dokud se podřízené okno nezavře.

  3. Ukončení existujících asynchronních požadavků XHR z události OnUnLoad Příklad:

    function unloadEventHandler() 
    {
    if (g_xmlHttpRequest != null && g_xmlHttpRequest.readyState != 4)
    {
    g_xmlHttpRequest.abort();
    }
    }
  4. Nevolte asynchronní volání XHR z události OnUnLoad.

    Poznámka: I když budete volat z události OnLoad, může k tomuto problému dojít i nadále.

  5. Upgradujte na Internet Explorer 10 a ujistěte se, že používáte nativní implementaci XHR.

  6. Zvyšte maximální počet připojení.

Další informace

Další informace o terminologii aktualizací softwaru najdete v následujícím článku znalostní báze Microsoft Knowledge Base:

824684 Popis standardní terminologie používané při popisu aktualizací softwaru společnosti Microsoft

Stav

Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.

Potřebujete další pomoc?

Rozšiřte své znalosti a dovednosti
Projít školení
Získejte nové funkce jako první
Připojit se k programu Microsoft Insider

Byly tyto informace užitečné?

Děkujeme za váš názor!

×