ข้อมูลรับรองที่ชัดเจนสำหรับ .NET WebProxy
กำหนดข้อมูลรับรองอย่างชัดเจนเมื่อสร้าง .NET WebProxy แทนการถือว่า URI ที่มีข้อมูลรับรองจะเติมบัญชีของมัน
URI อาจมี username:password ก่อนโฮสต์ของมัน นั่นไม่ได้หมายความว่า .NET API ทุกตัวที่ยอมรับ URI นั้นจะคัดลอกข้อมูลผู้ใช้ไปยังออบเจ็กต์การรับรองความถูกต้อง
เมื่อสร้าง WebProxy โดยตรง ให้ทำ การกำหนดข้อมูลรับรอง ให้ชัดเจน:
var proxy = new WebProxy("http://203.0.113.10:8080")
{
Credentials = new NetworkCredential(proxyUser, proxyPassword)
};ตัวแปร endpoint และบัญชีเป็นเพียงตัวอย่าง สิ่งนี้แยกที่อยู่ปลายทาง ที่อยู่พร็อกซี และบัญชีพร็อกซีออกจากกัน
หากรูปแบบอินพุตให้ URL ที่มีข้อมูลรับรอง ให้แยกวิเคราะห์ข้อมูลผู้ใช้อย่างตั้งใจ รักษารหัสผ่านที่มีเครื่องหมายทวิภาคโดยแยกเฉพาะที่ตัวคั่นข้อมูลรับรอง และถอดรหัสองค์ประกอบที่เข้ารหัสในขั้นตอนที่เหมาะสม หลีกเลี่ยงการพิมพ์ URL ต้นฉบับขณะวินิจฉัยตัวแยกวิเคราะห์นั้น
URL พร็อกซีที่ทำงานเป็นการตั้งค่าสภาพแวดล้อมอาจทำงานแตกต่างออกไปเมื่อส่งไปยังคอนสตรัคเตอร์อื่น การเริ่มต้นพร็อกซีจากสภาพแวดล้อมมีตรรกะการแยกวิเคราะห์ของตัวเอง ไม่ใช่คำสัญญาว่าคอนสตรัคเตอร์ทุกตัวใช้ฟิลด์เดียวกัน
สุดท้าย ตั้งค่าออบเจ็กต์พร็อกซีที่กำหนดค่าไว้บนแฮนด์เลอร์ที่ดำเนินการร้องขอ ข้อมูลรับรองที่ถูกต้องบน WebProxy ที่ไม่ได้ใช้ไม่สามารถส่งผลต่อการเชื่อมต่อได้