การเรียก VBA นี้ดูเหมือนจะเลือกพร็อกซีที่เก็บไว้ใน proxyServer:

http.setProxy 1, proxyServer, bypassList

สำหรับ MSXML ServerXMLHTTP อาร์กิวเมนต์แรกเลือกโหมดพร็อกซี ค่าที่เอกสารระบุคือ 0 สำหรับการกำหนดค่าเริ่มต้น 1 สำหรับการเชื่อมต่อโดยตรง และ 2 สำหรับพร็อกซีที่ระบุอย่างชัดเจน การส่งที่อยู่หลัง 1 ไม่ได้เปลี่ยนโหมดโดยตรงเป็นโหมดพร็อกซีแบบกำหนดเอง

ตัวอย่างพร็อกซีแบบกำหนดเองขั้นต่ำคือ:

Dim http As Object
Set http = CreateObject("MSXML2.ServerXMLHTTP.6.0")
http.setProxy 2, "proxy.example:8080", "<local>"
http.Open "GET", "https://example.com/", False
http.send

ปลายทางในตัวอย่างเป็นตัวแทนชั่วคราว สำหรับการตรวจสอบพร็อกซีสาธารณะ ให้แทนที่ด้วยที่อยู่ HTTP จากรายการพร็อกซี HTTP อาร์กิวเมนต์ที่สามคือรายการบายพาส ที่นี่ <local> ใช้ข้อยกเว้นชื่อท้องถิ่นตามเอกสาร ไม่ใช่พร็อกซีที่สองที่จะลองหากตัวแรก ล้มเหลว ดังนั้นการใส่ IP และพอร์ตของพร็อกซีอื่นไว้ที่นั่นจึงแสดงถึงการตั้งค่าผิดประเภท

ใช้ค่าคงที่ที่มีชื่อในจุดที่การอ้างอิง VBA ของคุณเปิดเผย หรือกำหนดค่าคงที่ที่เกี่ยวข้องในเครื่องเมื่อใช้การผูกแบบล่าช้า เพื่อให้โหมดมองเห็นได้ระหว่างการตรวจทาน

คำนึงถึงชนิดของออบเจ็กต์ด้วย ServerXMLHTTP XMLHTTP ที่เน้นเบราว์เซอร์ และ WinHttpRequest เป็นอินเทอร์เฟซ COM ที่แตกต่างกัน ตัวอย่างที่ใช้งานได้กับตัวหนึ่งไม่ได้ยืนยันแหล่งการกำหนดค่าของอีกตัว เมื่อออบเจ็กต์ที่ถูกต้องเลือกโหมดพร็อกซีแบบกำหนดเองแล้ว ให้ตรวจสอบข้อผิดพลาดที่เหลืออยู่ของการเชื่อมต่อ การรับรองความถูกต้อง หรือ TLS บนเส้นทางนั้น

บทความที่เกี่ยวข้อง