Konfigurasikan proksi klien YouTube .NET dengan HttpClientFactory.ForProxy
Gunakan Google.Apis.Http.HttpClientFactory.ForProxy dalam penyangga perkhidmatan dan bukan menggantikan pengendali dalaman klien YouTube selepas dibina.
Google.Apis menyediakan kilang untuk mencipta klien HTTP dengan IWebProxy. Berikannya semasa membina perkhidmatan yang dijana:
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)
});Contoh menggunakan akses kunci API untuk operasi data awam yang disokong. Tinggalkan penetapan kelayakan proksi untuk proksi tanpa pengesahan. Dalam cabang data awam itu, pilih entri HTTP daripada senarai proksi HTTP jika perantara awam dibenarkan. Akaun proksi dan kunci API melayani titik akhir yang berbeza.
Dalam Google.Apis 1.73.0, BaseClientService.Initializer.HttpClientFactory ialah cangkuk penciptaan yang disokong. ForProxy menetapkan proksi yang diberikan pada klien yang dicipta oleh kilang itu. Pembinaan permintaan, penseoran dan seluruh saluran SDK kekal dengan perkhidmatan.
Konfigurasikan ini sebelum menghantar permintaan. Menggantikan MessageHandler.InnerHandler pada klien yang dibina tidak perlu untuk kes ini dan boleh membuang pilihan pengendali lain.
Kelayakan OAuth boleh memperoleh atau menyegarkan tokennya melalui susunan HTTPnya sendiri. Menetapkan kilang perkhidmatan tidak menentukan cara kelayakan yang dicipta secara berasingan memperoleh token. Semak laluan itu secara berasingan jika pengambilan token ialah operasi yang gagal melalui proksi. Apabila menggunakan GoogleCredential, kekalkan salinan yang dihalakan daripada CreateWithHttpClientFactory untuk kerja token itu.