พร็อกซีดีบักมีประโยชน์เมื่อไคลเอนต์ต้องพบกับการตอบสนองที่เซิร์ฟเวอร์ปกติแทบไม่สร้างขึ้น กำหนดพฤติกรรมของไคลเอนต์ก่อน แล้วจึงเลือกการแทรกแซงที่สร้างสภาวะนั้น

«คำขอล้มเหลว» เป็นกรณีทดสอบที่กว้างเกินไป การตอบสนองข้อผิดพลาด HTTP ที่ถูกต้อง การตอบสนองที่ไม่เคยมาถึง และการเชื่อมต่อที่ถูกตัดกลางการดาวน์โหลด เรียกร้องสิ่งที่แตกต่างจากแอปพลิเคชัน

กรณีพฤติกรรมที่ต้องตรวจสอบ
การตอบสนองข้อผิดพลาด HTTP ที่สมบูรณ์ไคลเอนต์อ่านสถานะและใช้นโยบายข้อผิดพลาดที่ตั้งใจไว้หรือไม่
การตอบสนองที่ล่าช้าผู้ใช้ยกเลิกได้หรือไม่ และการหมดเวลาทำงานในขั้นตอนที่ตั้งใจไว้หรือไม่
ฟิลด์เฮดเดอร์หรือบอดีที่ไม่ได้คาดหมายการแยกวิเคราะห์และการตรวจสอบล้มเหลวอย่างชัดเจนหรือไม่
การแลกเปลี่ยนที่ถูกตัดกลางข้อมูลที่ไม่สมบูรณ์ยังแยกออกจากผลลัพธ์ที่เสร็จสิ้นได้หรือไม่

ใช้การแทรกแซงในชั้นที่ถูกต้อง

Charles มีเบรกพอยต์ที่หยุดคำขอหรือการตอบสนองก่อนส่งต่อ ข้อความที่ดักได้สามารถตรวจสอบและแก้ไข ปล่อยผ่าน หรือยกเลิกได้ เครื่องมือ Rewrite ใช้การเปลี่ยนแปลงที่ทำซ้ำได้กับเฮดเดอร์ URL หรือบอดีที่ตรงกัน การจำกัดความเร็วควบคุมแบนด์วิดท์และความหน่วงที่เพิ่มขึ้น

การควบคุมเหล่านี้ทดสอบพฤติกรรมของไคลเอนต์ HTTP ได้ แต่ขีดจำกัดแบนด์วิดท์ไม่ใช่แบบจำลองที่แม่นยำของการสูญหายของแพ็กเก็ต IP แบบสุ่ม พร็อกซีอาจบัฟเฟอร์ข้อมูล ใช้การเชื่อมต่อซ้ำ และเปิดการเชื่อมต่อต้นทางแยกต่างหาก เลือกเครื่องมือทำให้เครือข่ายเสื่อมสภาพเมื่อสภาวะที่ต้องการอยู่ต่ำกว่า HTTP โดยเฉพาะ

ทำให้แต่ละกรณีตีความได้

จับคู่โฮสต์และเส้นทางที่ตั้งใจไว้อย่างแคบ เริ่มด้วยการแลกเปลี่ยนปกติ เปิดใช้การเปลี่ยนแปลงหนึ่งอย่าง และบันทึกว่าอะไรถูกเปลี่ยน หากการลองใหม่ไปถึงปลายทางที่สอง ตัดสินใจว่ากฎเดียวกันควรมีผลกับการลองนั้นหรือไม่ มิฉะนั้นการเขียนใหม่แบบไม่มีเงื่อนไขอาจเปลี่ยนทุกเส้นทางการกู้คืนให้เป็นความล้มเหลวเดิม

ในการอัปโหลดหรือการดำเนินการคล้ายการชำระเงิน การตอบสนองที่สูญหายไม่ได้พิสูจน์ว่าเซิร์ฟเวอร์ปฏิเสธคำขอ รวมความกำกวมนั้นไว้ในกรณีลองใหม่ แทนที่จะยืนยันว่าความล้มเหลวในการขนส่งทุกครั้งปลอดภัยที่จะทำซ้ำ

การตรวจสอบหรือแก้ไขเนื้อหา HTTPS ต้องให้ไคลเอนต์เข้าร่วมในการตั้งค่าการตรวจสอบ TLS ของพร็อกซีดีบัก พร็อกซีที่ขนส่งเฉพาะ CONNECT เห็นไบต์แอปพลิเคชันที่เข้ารหัส ใช้การกำหนดค่าทดสอบที่แยกออก แล้วคืนค่าการกำหนดเส้นทางและการตั้งค่าความเชื่อถือในภายหลัง เพื่อให้การสังเกตครั้งต่อไปอธิบายไคลเอนต์ปกติ

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