Google.Apis обезбедува фабрика за создавање HTTP клиенти со IWebProxy. Доставете ја при изградбата на генерираната услуга:

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

Примерот користи пристап со API клуч за поддржана операција со јавни податоци. Изоставете ја доделата на прокси акредитиви за прокси без автентикација. Во таа гранка за јавни податоци, изберете HTTP запис од листата со HTTP прокси-сервери ако се дозволени јавни посредници. Сметката на проксито и API клучот служат различни крајни точки.

Во Google.Apis 1.73.0, BaseClientService.Initializer.HttpClientFactory е поддржаната кука за создавање. ForProxy го поставува доставеното прокси на клиентите создадени од таа фабрика. Изградбата на барања, серијализацијата и остатокот од SDK текот остануваат кај услугата.

Конфигурирајте го ова пред да испратите барања. Замената на MessageHandler.InnerHandler на изграден клиент е непотребна во овој случај и може да ги отфрли другите избори на обработувач.

OAuth акредитивот може да го добие или освежи својот токен преку сопствена HTTP поставеност. Поставувањето фабрика на услуга не одредува како одделно создаден акредитив добива токени. Проверете го тој пат одделно ако добивањето токен е операцијата што не успева преку проксито. Кога користите GoogleCredential, зачувајте ја рутираната копија од CreateWithHttpClientFactory за таа работа со токен.

Поврзани статии