Un transporte pode conservar o obxecto provedor de credenciais de proxy elixido ao crear o seu xestor de grupo. Substituír WebProxy.Credentials despois non é unha operación fiable de cambio de conta.

Cree a ruta e a conta xuntas antes de usar o cliente:

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

O punto final e as credenciais proveñen da configuración da aplicación. Cree outro controlador para unha segunda identidade; outro HttpClient que comparta o primeiro controlador tamén comparte a súa política.

Un provedor ICredentials personalizado pode responder a desafíos posteriores, pero non pode reetiquetar un túnel establecido como outra conta. Asignar un único usuario/contrasinal global arredor de chamadas asíncronas deixa o momento do desafío e a propiedade da conta en conflito.

Manteña un conxunto limitado de clientes cando se necesite reutilización. Baleire o traballo antigo antes de descartar o seu transporte. Un controlador novo por solicitude desbota os grupos de conexións; conservar todas as contas históricas para sempre fai que medren sen límite.

Artigos relacionados