En transport kan beholde proxy-legitimasjonsleverandørobjektet som ble valgt da puljebehandleren ble opprettet. Å erstatte WebProxy.Credentials etterpå er ikke en pålitelig kontobytte.

Opprett ruten og kontoen sammen før klienten brukes:

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);

Endepunktet og legitimasjonen kommer fra applikasjonskonfigurasjonen. Bygg en annen handler for en annen identitet; en annen HttpClient som deler den første handleren, deler også dens policy.

En egendefinert ICredentials-leverandør kan svare på senere utfordringer, men den kan ikke omdøpe en etablert tunnel til en annen konto. Å tildele ett globalt brukernavn/passord rundt asynkrone kall lar utfordringstidspunktet og kontoeierskapet stå i konflikt.

Behold et begrenset sett med klienter når gjenbruk er nødvendig. Tøm gammelt arbeid før transporten avhendes. En ny handler per forespørsel sløser med tilkoblingspooler; å beholde hver historisk konto for alltid får dem til å vokse uten grense.

Relaterte artikler