ใช้พร็อกซี HTTP กับไคลเอนต์ .NET ของ Twilio
ห่อ System.Net.Http.HttpClient ที่รับรู้พร็อกซีด้วยอะแดปเตอร์ SystemNetHttpClient ของ Twilio แล้วส่งต่อไปยัง TwilioRestClient
ไลบรารีตัวช่วย .NET ของ Twilio ยอมรับนามธรรมการขนส่ง HTTP ของตัวเอง อะแดปเตอร์ SystemNetHttpClient ของไลบรารีนี้ช่วยให้การขนส่งนั้นใช้ System.Net.Http.HttpClient ที่แอปพลิเคชันกำหนดค่าไว้
var proxy = new System.Net.WebProxy(
"http://proxy.example.net:8080")
{
Credentials = proxyCredentials
};
var handler = new System.Net.Http.HttpClientHandler
{
Proxy = proxy,
UseProxy = true,
AllowAutoRedirect = false
};
var systemHttp = new System.Net.Http.HttpClient(handler);
var transport = new Twilio.Http.SystemNetHttpClient(systemHttp);
var twilioClient = new Twilio.Clients.TwilioRestClient(
accountSid, authToken, httpClient: transport);แอปพลิเคชันจัดหา proxyCredentials เช่น NetworkCredential ที่เหมาะสม พร้อมทั้ง Twilio accountSid และ authToken ที่มีอยู่แล้ว ลบตัวเริ่มต้น Credentials เมื่อตัวกลางไม่ต้องใช้บัญชี ปลายทาง HTTP ที่เลือกจากรายการพร็อกซี HTTPก็เป็นอีกทางเลือกหนึ่งสำหรับเส้นทางที่ไม่มีการพิสูจน์ตัวตนนั้น ภายใต้นโยบายเครือข่ายของแอปพลิเคชันนี้
ส่ง twilioClient ไปยังพารามิเตอร์ client ของการดำเนินการตัวช่วย มิฉะนั้นการดำเนินการนั้นอาจใช้ไคลเอนต์ค่าเริ่มต้นที่กำหนดค่าแยกต่างหาก
AllowAutoRedirect ถูกปิดใช้งานที่นี่เพื่อรักษาพฤติกรรมเริ่มต้นของอะแดปเตอร์ SDK เมื่อมันสร้างไคลเอนต์พื้นฐานของตัวเอง เมื่อคุณจัดหา HttpClient ของคุณเอง การตั้งค่า handler ของมันจะกลายเป็นความรับผิดชอบของคุณ
ทำให้ systemHttp ยังมีชีวิตตลอดภาระงานที่เกี่ยวข้อง และปล่อยมันเมื่อภาระงานนั้นสิ้นสุด handler ใหม่รอบทุกคำขอ SDK จะสร้างพูลการเชื่อมต่อใหม่แทนที่จะใช้การขนส่งที่กำหนดค่าไว้ซ้ำ