قد يحتفظ النقل بكائن موفّر بيانات اعتماد الوسيط الذي اختير عند إنشاء مدير التجمع الخاص به. واستبدال WebProxy.Credentials بعد ذلك ليس عملية موثوقة لتبديل الحساب.

أنشئ المسار والحساب معًا قبل استخدام العميل:

var proxy = new System.Net.WebProxy(proxyEndpoint)
{
    Credentials = new System.Net.NetworkCredential(proxyUser, proxyPassword)
};
var handler = new System.Net.Http.HttpClientHandler
{
    UseProxy = true,
    Proxy = proxy
};
var client = new System.Net.Http.HttpClient(handler);

يأتي العنوان النهائي وبيانات الاعتماد من إعدادات التطبيق. أنشئ معالجًا آخر لهوية ثانية؛ وأي HttpClient يشارك المعالج الأول يشارك سياسته أيضًا.

يمكن لموفّر ICredentials المخصص أن يجيب على التحديات اللاحقة، لكنه لا يستطيع إعادة تصنيف نفق قائم على أنه حساب آخر. وتعيين اسم مستخدم/كلمة مرور عالميين حول الاستدعاءات غير المتزامنة يترك توقيت التحدي وملكية الحساب في تعارض.

احتفظ بمجموعة محدودة من العملاء عندما تكون إعادة الاستخدام مطلوبة. صرّف الأعمال القديمة قبل التخلص من نقلها. معالج جديد لكل طلب يهدر تجمعات الاتصال؛ والاحتفاظ بكل حساب تاريخي إلى الأبد يجعلها تنمو بلا حد.

مقالات ذات صلة