आफ्नो WebProxy का लागि प्रोक्सी खाता त्यही वस्तुमा राख्नुहोस्। अन्य .NET लगइन गुणका प्राप्तकर्ता फरक छन्:

गुणप्राप्तकर्ता
WebProxy.Credentialsत्यस वस्तुले जनाउने प्रोक्सी।
HttpClientHandler.Credentialsगन्तव्य सर्भर।
DefaultProxyCredentialsप्रणालीको पूर्वनिर्धारित प्रोक्सी, जब Proxy null र UseProxy true हुन्छ।

यो .NET 10 उदाहरणले स्पष्ट प्रोक्सी र त्यसको आफ्नै खाता दिन्छ:

using System;
using System.Net;
using System.Net.Http;

string password = Environment.GetEnvironmentVariable("PROXY_PASSWORD")
    ?? throw new InvalidOperationException("Set PROXY_PASSWORD");

var proxy = new WebProxy("http://203.0.113.10:8080")
{
    Credentials = new NetworkCredential("proxy-user", password)
};

using var handler = new HttpClientHandler
{
    Proxy = proxy,
    UseProxy = true
};
using var client = new HttpClient(handler)
{
    Timeout = TimeSpan.FromSeconds(15)
};

using var response = await client.GetAsync("https://example.com/");
Console.WriteLine((int)response.StatusCode);

दस्तावेजी एन्डपोइन्ट बदल्नुहोस् र सञ्चालकले दिएको खाता प्रयोग गर्नुहोस्। प्रमाणीकरणरहित सूची प्रविष्टिलाई काल्पनिक लगइन चाहिँदैन। ह्यान्डलरको Proxy स्पष्ट तोकिएकाले DefaultProxyCredentials, WebProxy.Credentials को विकल्प होइन।

UseDefaultCredentials को क्षेत्र पनि वस्तुमा निर्भर हुन्छ: ह्यान्डलरको सर्भर प्रमाणीकरण र WebProxy को प्रोक्सी प्रमाणीकरण फरक छन्। प्रक्रियाको प्रयोगकर्ताको खाता पठाउनु 407 को सामान्य उत्तर होइन।

प्रमाणीकरण माग बाँकी रहे वास्तविक विधि, छानिएको एन्डपोइन्ट र क्लाइन्ट/ह्यान्डलर इन्स्ट्यान्स हेर्नुहोस्। प्रोक्सी प्रमाणीकरण गन्तव्य TLS भन्दा पहिले हुन सक्छ, त्यसैले वेबसाइटको Authorization हेडरले त्यसको उत्तर दिँदैन। समर्थन अझै ह्यान्डलर, प्लेटफर्म, सेवा र परिचालन नीतिमा निर्भर छ; समग्र Windows प्रोक्सी बदल्नु पर्दैन।

सम्बन्धित लेखहरू