อาการ
เมื่อคุณใช้วิธีการแบบวัตถุ XMLDOMโหลดไปพร้อมกันโหลดเอกสาร Extensible Markup Language (XML) ที่มีในคอมพิวเตอร์ไคลเอนต์บนการเชื่อมต่อ SSL วิธีการล้มเหลว ด้วยข้อผิดพลาด 0x800c0007 และ INET_E_DATA_NOT_AVAILABLE ส่งกลับค่า
สาเหตุ
ปัญหานี้เกิดขึ้นเมื่อแฟ้มไม่ได้ถูกแคบนคอมพิวเตอร์ไคลเอนต์ มีหลายเหตุผลที่ทำไมแฟ้มอาจไม่ถูกแคช:
-
ผู้ใช้เลือกกล่องกาเครื่องหมายอย่าบันทึกเพจที่เข้ารหัสลับลงดิสก์บนแท็บขั้นสูงของกล่องโต้ตอบตัวเลือกอินเทอร์เน็ต
-
เซิร์ฟเวอร์ส่งการ Pragma:no-แคชหรือแค-ควบคุม: ไม่ใช่-แคหัว
-
ถ้าคุณกำลังใช้ Microsoft Internet Information Server (IIS), ตัวเลือกหมดอายุเนื้อหาถูกตั้งค่าเป็นหมดอายุทันที ซึ่งส่งข้อมูลส่วนหัวไม่ใช่แคตลอดจนหมดอายุ: 0 ส่วนหัว http
การแก้ไข
เมื่อต้องการแก้ไขปัญหานี้ ดำเนินการขั้นตอนต่อไปนี้:
-
ใน Internet Explorer บนเมนูเครื่องมือคลิกตัวเลือกอินเทอร์เน็ต บนแท็บขั้นสูงยกเลิกเลือกกล่องกาเครื่องหมายอย่าบันทึกเพจที่เข้ารหัสลับลงดิสก์
-
ตรวจสอบให้แน่ใจว่า เซิร์ฟเวอร์ส่งหัวแค no
-
ใน IIS ใน Microsoft Management Console (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):
http://msdn.microsoft.com/xml/default.aspสำหรับข้อมูลเพิ่มเติมเกี่ยวกับการพัฒนาเว็บโซลูชันสำหรับ Microsoft Internet Explorer แวะไปเว็บไซต์ต่อไปนี้ของ Microsoft:
http://msdn.microsoft.com/ie/ http://support.microsoft.com/iep