Проблемы
При использовании метода Load XMLDOM объектной модели для синхронной загрузки документа язык XML (Extensible Markup) на клиентском компьютере через SSL-подключение, метод завершается неудачей с ошибкой 0x800c0007 и INET_E_DATA_NOT_AVAILABLE возвращают значение.
Причина
Эта проблема возникает, когда файл не кэшируется на клиентском компьютере. Существует несколько причин, почему, файл не может кэшироваться.
-
Пользователь выбирает флажок не сохранять зашифрованные страницы на диск , на вкладке « Дополнительно » диалогового окна « Свойства обозревателя ».
-
Сервер отправляет Pragma:no-кэш или кэш-элемента управления: no-заголовков кэша.
-
Если вы используете Microsoft Internet Information Server (IIS), параметр срока действия содержимого имеет значение истекает немедленно, который отправляет заголовки нет-cache, а также истекает: 0 HTTP-заголовок.
Решение
Чтобы устранить эту проблему, выполните следующие действия:
-
В обозревателе Internet Explorer в меню Сервис пункт Свойства обозревателя. На вкладке « Дополнительно » снимите флажок « не сохранять зашифрованные страницы на диск ».
-
Убедитесь, что сервер не отправляет заголовки нет-cache.
-
В службах IIS в оснастке консоли управления (MMC) щелкните правой кнопкой мыши файл XML. На вкладке Заголовки HTTP отключите параметр срока действия содержимого.
Статус
Корпорация Майкрософт подтверждает, что это является ошибкой в продуктах Майкрософт, перечисленных в начале данной статьи.
Дополнительная информация
Действия для воспроизведения поведения
-
В обозревателе Internet Explorer в меню Сервис пункт Свойства обозревателя. На вкладке « Дополнительно » снимите флажок « не сохранять зашифрованные страницы на диск ».
-
Создайте HTML-файл с именем Test.html, а затем вставьте следующий код:
<HTML><BODY><INPUT type=button onclick=loadmyxml() value="Load XML"><SCRIPT>function loadmyxml(){var XMLObj = new ActiveXObject("Microsoft.XMLDOM")XMLObj.async = false;XMLObj.load('https://localhost/secure/test.xml'); if (XMLObj.parseError.errorCode != 0)alert("Error loading XML file : " + XMLObj.parseError.reason);elsealert (XMLObj.xml);}</script></BODY></HTML>
-
Сохраните Test.html в защищенной папке на веб-сервере.
-
Создайте новый XML-файл с именем Test.xml, а затем вставьте следующий код:
<?xml version='1.0' ?><BOOKLIST><BOOK><CATEGORY>Fiction</CATEGORY><TITLE>The Snow Leopard</TITLE><AUTHOR>Desmond Bagley</AUTHOR></BOOK></BOOKLIST>
-
Сохраните Test.xml защищенной папке на веб-сервере.
-
В обозревателе Internet Explorer перейдите к Test.html и нажмите кнопку Загрузить XML. Появляется сообщение об ошибке 0x800c0007.
Ссылки
Дополнительные сведения о XML см на Microsoft Developer Network (MSDN):
http://msdn.microsoft.com/xml/default.aspДополнительные сведения о разработке веб-приложений для Microsoft Internet Explorer посетите следующий веб-узел Майкрософт:
http://msdn.microsoft.com/ie/ http://support.microsoft.com/iep