YouTube .NET-ügyfélproxy beállítása HttpClientFactory.ForProxy használatával
Használja a Google.Apis.Http.HttpClientFactory.ForProxy elemet a szolgáltatás inicializálójában ahelyett, hogy a YouTube-ügyfél belső kezelőjét felépítés után lecserélné.
A Google.Apis gyárat biztosít HTTP-ügyfelek létrehozásához IWebProxy használatával. Adja át a létrehozott szolgáltatás felépítésekor:
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)
});A példa API-kulcsos hozzáférést használ egy támogatott nyilvános adatművelethez. Hitelesítés nélküli proxy esetén hagyja ki a proxy hitelesítő adatainak hozzárendelését. Ebben a nyilvános adatágban válasszon HTTP-bejegyzést a HTTP-proxyk listájából, ha a nyilvános közvetítők engedélyezettek. A proxy fiókja és az API-kulcs különböző végpontokat szolgál ki.
A Google.Apis 1.73.0 verziójában a BaseClientService.Initializer.HttpClientFactory a támogatott létrehozási kampó. A ForProxy a megadott proxyt állítja be az adott gyár által létrehozott ügyfeleken. A kérések felépítése, a szerializálás és az SDK többi folyamata a szolgáltatásnál marad.
Ezt a kérések kiadása előtt állítsa be. A MessageHandler.InnerHandler lecserélése egy felépített ügyfélen ebben az esetben szükségtelen, és más kezelőválasztásokat vethet el.
Az OAuth-hitelesítő adat saját HTTP-elrendezésén keresztül szerezheti be vagy újíthatja meg a tokenjét. Egy szolgáltatás gyárának beállítása nem határozza meg, hogy egy külön létrehozott hitelesítő adat hogyan szerez tokeneket. Ha a tokenlekérés az a művelet, amely a proxyn keresztül meghiúsul, külön ellenőrizze ezt az útvonalat. A GoogleCredential használatakor őrizze meg a CreateWithHttpClientFactory által irányított másolatot ehhez a tokenmunkához.