Симптоми
Когато използвате метода за Зареждане на обектния модел на XMLDOM синхронно зареждане документ на Extensible Markup Language (XML) на компютър клиент по SSL връзка, този метод е неуспешна с грешка 0x800c0007 и INET_E_DATA_NOT_AVAILABLE връща стойност.
Причина
Този проблем възниква, когато файлът не е кеширан на клиентския компютър. Има няколко причини защо може да не се кешира файлове:
-
Потребителят избира квадратчето не Записвай шифровани страници на диска в раздела Разширени на диалоговия прозорец Опции за интернет .
-
Сървърът изпраща Pragma:no-кеш или кеш-Контрол: не-кеша заглавка.
-
Ако използвате Microsoft Internet Information Server (IIS), изтичане на съдържанието е зададена да изтича веднага, които изпраща не кеша заглавия, както и изтича: 0 HTTP заглавка.
Решение
За да разрешите този проблем, изпълнете следните стъпки:
-
В Internet Explorer в менюто инструменти изберете Опции за интернет. В раздела Разширени изчистете квадратчето не Записвай шифровани страници на диска .
-
Уверете се, че сървърът изпраща не кеша заглавки.
-
В IIS в конзолата на Microsoft за управление (MMC) добавка, щракнете с десния бутон на XML файл. В раздела HTTP заглавки Изключете опцията за изтичане на съдържанието.
Статус
Microsoft потвърждава, че това е пропуск, съществуващ в продуктите на Microsoft, изброени в началото на тази статия.
Повече информация
Стъпки за възпроизвеждане на поведението
-
В 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):
За повече информация за разработване на уеб базирани решения за Microsoft Internet Explorer посетете следните уеб сайтове на Microsoft: