var proxy = new System.Net.WebProxy("http://proxy.example:8080")
{
    Credentials = proxyCredentials
};
var factory = Google.Apis.Http.HttpClientFactory.ForProxy(proxy);
var routedCredential = credential.CreateWithHttpClientFactory(factory);

credential é o GoogleCredential existente da aplicação. O método devolve uma cópia, por isso use routedCredential para o trabalho do token ou autenticação da API em vez de continuar com o original.

proxyCredentials identifica a conta intermediária; omita o inicializador se não for necessário. Nesse caso não autenticado, a lista de proxies HTTP pode fornecer candidatos de endpoint quando o destino do token é público e é permitida uma rota de proxy público. Preserve o tipo e os escopos exigidos da credencial do Google. As credenciais do proxy não substituem um segredo de cliente, uma chave de conta de serviço ou um token de acesso.

O cliente do serviço de API é outra via de construção. Forneça também a fábrica pretendida a esse transporte quando os pedidos do serviço e do token precisarem do proxy. Configurar apenas o serviço pode ainda deixar um pedido de token anterior sem conseguir ligar-se.

Um token de acesso em cache evita uma nova troca. Compare o anfitrião e o pedido que realmente falharam em vez de tratar uma operação de token em cache ou a construção de um objeto como uma nova ligação de proxy.

Artigos relacionados