మీ స్వంత WebProxy కోసం ప్రాక్సీ ఖాతాను అదే ఆబ్జెక్ట్‌పై పెట్టండి. ఇతర .NET ప్రవేశ వివరాల లక్షణాల గ్రహీతలు వేరు:

లక్షణంగ్రహీత
WebProxy.Credentialsఆ ఆబ్జెక్ట్ సూచించే ప్రాక్సీ.
HttpClientHandler.Credentialsగమ్య సర్వర్.
DefaultProxyCredentialsProxy 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 ప్రాక్సీ మార్పు అవసరం లేదు.

సంబంధిత వ్యాసాలు