บทความนี้จะแนะนำตัวอย่างการใช้ MSXML2.ServerXMLHTTP เพื่อใช้คำขอแบบอะซิงโครนัสใน asp เป็นหลัก บทความนี้ยังให้ข้อผิดพลาดที่พบบ่อยที่สุดในการเขียนโค้ดคำขอแบบอะซิงโครนัส MSXML2.ServerXMLHTTP อีกด้วย
เมื่อ asp ใช้ MSXML2.ServerXMLHTTP เพื่อส่งคำขอแบบอะซิงโครนัส คุณต้องใส่ใจในการพิจารณาว่า readyState ของออบเจ็กต์ MSXML2.ServerXMLHTTP เป็น 4 หรือไม่ หากคุณไม่ได้พิจารณาว่าคุณสมบัติของออบเจ็กต์นั้นได้รับโดยตรงหรือไม่ เช่น responseText ข้อผิดพลาดต่อไปนี้จะเกิดขึ้น:
คัดลอกรหัสรหัสดังต่อไปนี้:ข้อผิดพลาด msxml3.dll '8000000a'
ยังไม่มีข้อมูลที่จำเป็นในการดำเนินการนี้ให้เสร็จสิ้น
/a.asp บรรทัดที่ 18
asp ใช้ MSXML2.ServerXMLHTTP เพื่อส่งซอร์สโค้ดคำขอแบบอะซิงโครนัส:
คัดลอกรหัสรหัสดังต่อไปนี้:-
ถ้า request.QueryString(dc)=1 คำขอ xhr จะแสดงเวลาปัจจุบันและหยุดการดำเนินการ
ตอบกลับ เขียนตอนนี้
การตอบสนองสิ้นสุด
สิ้นสุดถ้า
หรี่ xmlServerHttp
ตั้งค่า xmlserverhttp = server.createobject (MSXML2.ServerXMLHTTP)
xmlServerHttp.open GET, http://www.vevb.com/a.asp?dc=1, true' เริ่มต้นคำขอแบบอะซิงโครนัส
xmlServerHttp.send
ในขณะที่ xmlServerHttp.readyState <> 4' โปรดทราบว่าคุณต้องกำหนดสถานะของออบเจ็กต์ xhr ที่นี่ หากไม่ใช่ 4 ให้รอ 1,000 มิลลิวินาที มิฉะนั้นประโยคด้านล่างจะรายงานข้อผิดพลาดที่โพสต์ด้านบน
xmlServerHttp.waitForResponse 1,000
เวนด์
response.contenttype = ข้อความ/html
response.write หน้าผู้รับ: & xmlServerHttp.responseText & <br/>
-