ใช้พร็อกซีที่เลือกกับไคลเอนต์ TIdHTTP ของ Delphi
เชื่อมต่อการเลือกจากรายการ Delphi เข้ากับการกำหนดค่าพร็อกซีของ TIdHTTP พร้อมค่าเอนด์พอยต์ที่ตรวจสอบแล้วและตัวเลือกเชื่อมต่อโดยตรงที่ชัดเจน
กล่องรายการสามารถแสดงพร็อกซีได้หนึ่งร้อยรายการในขณะที่ TIdHTTP ยังคงใช้ตัวเดิม การเลือกแถวเปลี่ยนอินเทอร์เฟซ คำขอถัดไปจะเปลี่ยนเส้นทางก็ต่อเมื่อเอนด์พอยต์ที่เลือกไปถึงการกำหนดค่าของไคลเอนต์ HTTP แล้ว
สำหรับการดาวน์โหลด HTTP สาธารณะ รายการจากรายการพร็อกซี HTTPสามารถให้เอนด์พอยต์ที่เป็นตัวเลือกได้ เก็บโฮสต์และพอร์ตจำนวนเต็มไว้ด้านหลังแต่ละรายการที่แสดง เมื่อยอมรับการเลือกแล้ว ให้ใช้ทั้งสองก่อนเริ่มดาวน์โหลด:
IdHTTP1.ProxyParams.ProxyServer := ChosenHost;
IdHTTP1.ProxyParams.ProxyPort := ChosenPort;
Page := IdHTTP1.Get(TargetURL);
ส่วนนี้ถือว่าไคลเอนต์ว่าง เอนด์พอยต์ได้รับการตรวจสอบแล้ว และมีตัวแปรที่มีอยู่ของแอปพลิเคชัน URL เป้าหมายยังคงเป็นเว็บไซต์ ฟิลด์โฮสต์ของพร็อกซีรับโฮสต์ ไม่ใช่ URL ของเว็บไซต์หรือป้ายกำกับที่แสดง
การเลือกต้องมีผลลัพธ์ที่เป็นไปได้สามอย่าง
- การเลือกพร็อกซีที่ถูกต้องให้โฮสต์และพอร์ตตั้งแต่ 1 ถึง 65535
- ตัวเลือก Direct ที่ชัดเจนจะล้างโฮสต์ของพร็อกซีสำหรับคำขอถัดไป
- การเลือกที่ไม่ถูกต้องหรือไม่มีอยู่จะปล่อยการกำหนดค่าปัจจุบันไว้เหมือนเดิมและขอให้ผู้ใช้แก้ไข
การแยกผลลัพธ์เหล่านี้ออกจากกันจะป้องกันไม่ให้แถวที่ไม่ได้เลือกส่งคำขอถัดไปโดยตรงอย่างไม่คาดคิด ปิดใช้งานปุ่มคำขอในขณะที่การเลือกใหม่ยังไม่สมบูรณ์
หากเอนด์พอยต์มาเป็นข้อความ ให้แยกวิเคราะห์และตรวจสอบก่อนเปลี่ยนคุณสมบัติใดคุณสมบัติหนึ่งจากสองอย่าง TryStrToInt ช่วยให้อินเทอร์เฟซรายงานพอร์ตที่ไม่ดีได้โดยไม่มีข้อยกเว้นการแปลงที่ไม่ถูกจับ การแบ่งที่เครื่องหมายจุดคู่แรกเหมาะเฉพาะกับรูปแบบชื่อโฮสต์หรือ IPv4 ที่จำกัดโดยเจตนา: ลิเทอรัล IPv6 มีเครื่องหมายจุดคู่ของตัวเอง ฟิลด์โฮสต์และฟิลด์พอร์ตที่แยกจากกันทำให้การแทนค่าที่จัดเก็บง่ายขึ้น
อย่าให้การคลิกใน UI แก้ไขไคลเอนต์ที่ผู้ปฏิบัติงานกำลังใช้งานอยู่แล้ว ใช้การเลือกระหว่างการดำเนินการ หรือให้แต่ละการดำเนินการพร้อมกันมีไคลเอนต์ที่กำหนดค่าไว้ของตัวเอง ตัวเลือกควบคุมการเชื่อมต่อในอนาคต มันไม่สามารถย้ายการถ่ายโอนที่สร้างขึ้นแล้วไปยังทางออกอื่นได้