Google.Apis biedt een factory voor het maken van HTTP-clients met een IWebProxy. Geef deze mee bij het bouwen van de gegenereerde service:

var proxy = new System.Net.WebProxy("http://proxy.example:8080");
proxy.Credentials = new System.Net.NetworkCredential(
    proxyUser, proxyPassword);

using var youtube = new Google.Apis.YouTube.v3.YouTubeService(
    new Google.Apis.Services.BaseClientService.Initializer
    {
        ApplicationName = "ExampleVideoClient",
        ApiKey = apiKey,
        HttpClientFactory =
            Google.Apis.Http.HttpClientFactory.ForProxy(proxy)
    });

Het voorbeeld gebruikt API-sleuteltoegang voor een ondersteunde openbare-data-bewerking. Laat de toewijzing van proxyreferenties weg voor een niet-geverifieerde proxy. Kies in die openbare-data-tak een HTTP-item uit de lijst met HTTP-proxy’s als openbare tussenpersonen zijn toegestaan. Het proxyaccount en de API-sleutel bedienen verschillende eindpunten.

In Google.Apis 1.73.0 is BaseClientService.Initializer.HttpClientFactory de ondersteunde aanmaakhook. ForProxy stelt de opgegeven proxy in op clients die door die factory worden gemaakt. Aanvraagopbouw, serialisatie en de rest van de SDK-pijplijn blijven bij de service.

Configureer dit voordat u aanvragen verzendt. MessageHandler.InnerHandler vervangen op een gebouwde client is hier onnodig en kan andere handlerkeuzes weggooien.

Een OAuth-referentie kan zijn token verkrijgen of vernieuwen via zijn eigen HTTP-regeling. Het instellen van een servicefactory bepaalt niet hoe een afzonderlijk gemaakte referentie tokens verkrijgt. Controleer dat pad apart als tokenophaling de bewerking is die via de proxy mislukt. Wanneer u GoogleCredential gebruikt, behoud dan de gerouteerde kopie van CreateWithHttpClientFactory voor dat tokenwerk.

Gerelateerde artikelen