Google.Apis jipprovdi fabbrika għall-ħolqien ta' klijenti HTTP b'IWebProxy. Ipprovdiha meta tibni s-servizz iġġenerat:

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

Il-eżempju juża aċċess b'ċavetta API għal operazzjoni ta' data pubblika appoġġata. Ħalli barra l-assenjazzjoni tal-kredenzjali tal-proxy għal proxy mingħajr awtentikazzjoni. F'dak il-fergħa tad-data pubblika, agħżel entrata HTTP mill-lista ta’ proxies HTTP jekk l-intermedjarji pubbliċi huma permessi. Il-kont tal-proxy u ċ-ċavetta API jaqdu punti finali differenti.

Fil-Google.Apis 1.73.0, BaseClientService.Initializer.HttpClientFactory huwa l-hook tal-ħolqien appoġġat. ForProxy jistabbilixxi l-proxy pprovdut fuq klijenti maħluqa minn dik il-fabbrika. Il-bini tat-talbiet, is-serjalizzazzjoni u l-bqija tal-pipeline SDK jibqgħu mas-servizz.

Ikkonfigura dan qabel ma tibgħat talbiet. Is-sostituzzjoni ta' MessageHandler.InnerHandler fuq klijent mibni mhix meħtieġa f'dan il-każ u tista' tarmi għażliet oħra tal-handler.

Kredenzjali OAuth tista' tikseb jew taġġorna t-token tagħha permezz tal-arranġament HTTP tagħha stess. L-istabbiliment tal-fabbrika ta' servizz ma jiddeterminax kif kredenzjali maħluqa b'mod separat tikseb tokens. Iċċekkja dik it-triq separatament jekk l-irkupru tat-token hija l-operazzjoni li tfalli permezz tal-proxy. Meta tuża GoogleCredential, żomm il-kopja rrotutata minn CreateWithHttpClientFactory għal dak ix-xogħol tat-token.

Artikli relatati