ไลบรารีตัวช่วย .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 จะสร้างพูลการเชื่อมต่อใหม่แทนที่จะใช้การขนส่งที่กำหนดค่าไว้ซ้ำ

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