Google.Apis tarjoaa tehtaan HTTP-asiakkaiden luomiseen IWebProxyllä. Anna se, kun rakennat luodun palvelun:

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

Esimerkki käyttää API-avaimen käyttöoikeutta tuettuun julkisen datan toimintoon. Jätä välityspalvelimen tunnistetietojen määritys pois, jos välityspalvelin ei vaadi todennusta. Valitse kyseisessä julkisen datan haarassa HTTP-merkintä HTTP-välityspalvelinten luettelosta, jos julkiset välittäjät ovat sallittuja. Välityspalvelimen tili ja API-avain palvelevat eri päätepisteitä.

Google.Apis-versiossa 1.73.0 BaseClientService.Initializer.HttpClientFactory on tuettu luontikoukku. ForProxy asettaa annetun välityspalvelimen kyseisen tehtaan luomiin asiakkaisiin. Pyyntöjen rakentaminen, sarjoitus ja muu SDK-putki jäävät palvelulle.

Määritä tämä ennen pyyntöjen lähettämistä. MessageHandler.InnerHandlerin korvaaminen luodussa asiakkaassa on tarpeetonta tässä tapauksessa ja voi hylätä muita käsittelijävalintoja.

OAuth-tunnistetieto voi hankkia tai päivittää tunnuksensa oman HTTP-järjestelynsä kautta. Palvelun tehtaan asettaminen ei määritä, miten erikseen luotu tunnistetieto saa tunnuksia. Tarkista tämä polku erikseen, jos tunnuksen haku on toiminto, joka epäonnistuu välityspalvelimen kautta. Kun käytät GoogleCredentialia, säilytä CreateWithHttpClientFactoryn reititetty kopio tätä tunnustyötä varten.

Aiheeseen liittyvät artikkelit