HttpClientFactory.ForProxy ile YouTube .NET istemci proxy'sini yapılandırma
YouTube istemcisinin iç işleyicisini oluşturduktan sonra değiştirmek yerine hizmet başlatıcısında Google.Apis.Http.HttpClientFactory.ForProxy kullanın.
Google.Apis, IWebProxy içeren HTTP istemcileri oluşturmak için bir fabrika sağlar. Oluşturulan hizmeti kurarken bunu sağlayın:
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)
});Örnek, desteklenen bir genel veri işlemi için API anahtarı erişimi kullanır. Kimliği doğrulanmamış bir proxy için proxy kimlik bilgilerinin atanmasını atlayın. Bu genel veri dalında, genel aracılara izin veriliyorsa HTTP proxy listesinden bir HTTP girişi seçin. Proxy hesabı ve API anahtarı farklı uç noktalara hizmet eder.
Google.Apis 1.73.0'da BaseClientService.Initializer.HttpClientFactory desteklenen oluşturma kancasıdır. ForProxy, sağlanan proxy'yi bu fabrika tarafından oluşturulan istemcilere ayarlar. İstek oluşturma, serileştirme ve SDK işlem hattının geri kalanı hizmette kalır.
Bunu istek göndermeden önce yapılandırın. Oluşturulmuş bir istemcide MessageHandler.InnerHandler'ı değiştirmek bu durumda gereksizdir ve diğer işleyici seçimlerini atabilir.
Bir OAuth kimlik bilgisi, belirtecini kendi HTTP düzenlemesi aracılığıyla alabilir veya yenileyebilir. Bir hizmetin fabrikasını ayarlamak, ayrı olarak oluşturulan bir kimlik bilgisinin belirteçleri nasıl aldığını belirlemez. Proxy üzerinden başarısız olan işlem belirteç alma ise bu yolu ayrıca kontrol edin. GoogleCredential kullanırken bu belirteç işi için CreateWithHttpClientFactory'den yönlendirilen kopyayı saklayın.