WPAD เปิดอยู่ ทำไมที่อยู่พร็อกซีของ WinHTTP จึงว่างเปล่า?
การอ่านการกำหนดค่าพร็อกซีของ Windows และการเลือกพร็อกซีสำหรับปลายทางเป็นการดำเนินการที่แยกจากกัน ตัวตนของบริการเพิ่มขอบเขตอีกชั้นหนึ่ง
การค้นหาพร็อกซีอัตโนมัติอาจเปิดอยู่ขณะที่สตริงพร็อกซีที่ตั้งด้วยมือว่างเปล่า WinHttpGetIEProxyConfigForCurrentUser() ส่งคืนฟิลด์การกำหนดค่า ไม่ใช่ จุดปลายสุดท้ายสำหรับทุกปลายทาง
| ฟิลด์ | ความหมาย |
|---|---|
| พร็อกซีด้วยมือ | ค่าที่กำหนดค่าไว้อย่างชัดเจน |
| URL การกำหนดค่าอัตโนมัติ | ตำแหน่งของสคริปต์ PAC |
| แฟล็กการค้นหาอัตโนมัติ | การค้นหาถูกเปิดใช้งานหรือไม่ |
โครงสร้างคือผลลัพธ์ การตั้งค่าสมาชิกการค้นหาอัตโนมัติก่อนเรียกใช้ฟังก์ชันไม่ได้เปิดการค้นหาของ Windows ใช้ฟิลด์ที่ส่งคืนเพื่อสร้างคำขอพร็อกซีอัตโนมัติแยกต่างหากพร้อมแฟล็กที่จัดทำเอกสารไว้
กำหนดก่อน แล้วจึงนำไปใช้
API อย่าง WinHttpGetProxyForUrl() ประเมิน URL ปลายทางจริง ให้ URL นั้น ไม่ใช่ URL ดาวน์โหลด PAC และนำผลการกำหนดไปใช้กับคำขอ WinHTTP ที่เกี่ยวข้อง
ผลลัพธ์โดยตรงใช้ได้ ข้อผิดพลาดในการดาวน์โหลดสคริปต์ การประเมินสคริปต์ และการเชื่อมต่อพร็อกซีเกิดขึ้นในขั้นตอนแยกกัน ตรวจสอบรหัสความล้มเหลวและปฏิบัติตามกฎความเป็นเจ้าของสำหรับสตริงที่ส่งคืน
การกำหนดค่าของใคร
“CurrentUser” หมายถึงบริบทของผู้เรียกใช้ บริการที่ไม่มีการสวมรอยที่เหมาะสมอาจอ่านการตั้งค่าของบัญชีบริการของตนเองแทนของผู้ใช้เดสก์ท็อป
เลือกอย่างตั้งใจว่าบริการใช้การตั้งค่าที่จัดการหรือปฏิบัติตามการกำหนดค่าของผู้ใช้ที่ได้รับอนุญาต รวมถึงพฤติกรรมเมื่อไม่มีผู้ใช้แบบโต้ตอบ การจัดการโทเค็นและการล้างทรัพยากรต้องเป็นไปตาม API ข้อมูลระบุตัวตนที่รองรับ
สำหรับการวินิจฉัย ให้เก็บบัญชีผู้เรียก ฟิลด์การกำหนดค่า ปลายทาง ผลการกำหนด และข้อผิดพลาดการเชื่อมต่อครั้งแรกไว้ด้วยกัน ซึ่งแสดงว่าขั้นตอนใดสร้างค่าว่างหรือเส้นทางที่ล้มเหลว