Applies To
General

徵狀

當您使用Load XMLDOM 物件模型的方法來同步載入透過 SSL 連線的用戶端電腦上的 「 可延伸標記語言 (XML) 文件時,則方法會失敗,錯誤碼為 0x800c0007,和 INET_E_DATA_NOT_AVAILABLE 傳回值。

原因

檔案不會快取在用戶端電腦時,就會發生這個問題。為什麼檔案可能不會快取的幾個原因有:

  • 使用者可選取 [網際網路選項] 對話方塊中的 [進階] 索引標籤上的 [不要儲存到磁碟加密的網頁] 核取方塊。

  • 伺服器傳送 Pragma:no-快取或快取-控制項: 沒有-快取標頭。

  • 如果您使用的 Microsoft 網際網路資訊伺服器 」 (IIS),[內容到期] 選項會設定為 [過期,立即傳送不快取標頭以及到期日: 0http 標頭。

解決方案

若要解決這個問題,請執行下列步驟:

  1. 在 Internet Explorer 中的 [工具] 功能表中,按一下 [網際網路選項]。在 [進階] 索引標籤上清除 [不要儲存到磁碟加密的網頁] 核取方塊。

  2. 請確定伺服器不會傳送不快取標頭。

  3. 在 IIS 中,在 Microsoft 管理主控台 (MMC) 嵌入式管理單元,以滑鼠右鍵按一下 XML 檔案。在HTTP 標頭] 索引標籤中,關閉 [內容到期] 選項。

狀態

Microsoft 已確認這是本文開頭所列的 Microsoft 產品中的錯誤。

其他相關資訊

若要重現問題的步驟

  1. 在 Internet Explorer 中的 [工具] 功能表中,按一下 [網際網路選項]。在 [進階] 索引標籤上清除 [不要儲存到磁碟加密的網頁] 核取方塊。

  2. 建立名為 Test.html,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>
  3. 請將 Test.html 儲存到安全的資料夾中,在您的 Web 伺服器上。

  4. 建立名為 Test.xml,新的 XML 檔案,然後貼上下列程式碼:

    <?xml version='1.0' ?><BOOKLIST><BOOK><CATEGORY>Fiction</CATEGORY><TITLE>The Snow Leopard</TITLE><AUTHOR>Desmond Bagley</AUTHOR></BOOK></BOOKLIST>
  5. 請將 Test.xml 儲存到安全的資料夾中,在您的 Web 伺服器上。

  6. 在 Internet Explorer 瀏覽 Test.html,並再按一下 [載入的 XML。您會收到錯誤 0x800c0007。

參考

如需有關 XML 的詳細資訊,請參閱下列文件 Microsoft 開發人員網路 (MSDN):

如需有關 Microsoft Internet Explorer 開發以 Web 為基礎的解決方案的詳細資訊,請造訪下列 Microsoft 網站:

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。