Sintomas
Quando você usar o método Load do modelo de objeto XMLDOM sincronicamente carregar um documento Extensible Markup Language (XML) em um computador cliente através de uma conexão SSL, o método falhará com um erro de 0x800c0007 e o INET_E_DATA_NOT_AVAILABLE o valor de retorno.
Causa
Esse problema ocorre quando o arquivo não está em cache no computador cliente. Há várias razões por que o arquivo pode não ser armazenado em cache:
-
O usuário seleciona a caixa de seleção não salvar páginas criptografadas no disco , na guia Avançado da caixa de diálogo Opções da Internet .
-
O servidor envia um Pragma:no-cache ou Cache-controle: não-cabeçalho de cache.
-
Se você estiver usando o Microsoft Internet Information Server (IIS), a opção de expiração de conteúdo está definida para expirar imediatamente, que envia os cabeçalhos cache não tão Expires: 0 cabeçalho HTTP.
Resolução
TC T TV cctvyvybuyygvggvvbbbhcvcnvm
-
No Internet Explorer, no menu Ferramentas , clique em Opções da Internet. Na guia Avançado , desmarque a caixa de seleção não salvar páginas criptografadas no disco .
-
Certifique-se de que o servidor não enviar cabeçalhos sem cache.
-
No IIS, no snap-in Microsoft Management Console (MMC), clique com botão direito no arquivo XML. Na guia Cabeçalhos HTTP , desative a opção de expiração de conteúdo.
Status
A Microsoft confirmou que esse é um problema nos produtos Microsoft que estão listados no início deste artigo.
Informações adicionais
Etapas para reproduzir o comportamento
-
No Internet Explorer, no menu Ferramentas , clique em Opções da Internet. Na guia Avançado , desmarque a caixa de seleção não salvar páginas criptografadas no disco .
-
Crie um arquivo HTML chamado Test e, em seguida, cole o seguinte código:
<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>
-
Salve Test para uma pasta segura em seu servidor Web.
-
Criar um novo arquivo XML denominado Test.xml e, em seguida, cole o seguinte código:
<?xml version='1.0' ?><BOOKLIST><BOOK><CATEGORY>Fiction</CATEGORY><TITLE>The Snow Leopard</TITLE><AUTHOR>Desmond Bagley</AUTHOR></BOOK></BOOKLIST>
-
Salve Test.xml em uma pasta segura em seu servidor Web.
-
No Internet Explorer, vá para Test e, em seguida, clique em Carregar XML. Você recebe o erro 0x800c0007.
Referências
Para obter mais informações sobre XML, consulte o seguinte artigo no Microsoft Developer Network (MSDN):
http://msdn.microsoft.com/xml/default.aspPara obter mais informações sobre como desenvolver soluções baseadas na Web para o Microsoft Internet Explorer, visite os seguintes sites da Microsoft:
http://msdn.microsoft.com/ie/ http://support.microsoft.com/iep