У меня есть следующий фрагмент кода, чтобы сделать звонок внабор прокси для Google.Apis.YouTube.v3
YouTubeService service = new YouTubeService(new BaseClientService.Initializer()
{
ApiKey = AppSettings.Variables.YouTube_APIKey,
ApplicationName = AppSettings.Variables.YouTube_AppName
});
Google.Apis.YouTube.v3.VideosResource.ListRequest request = service.Videos.List("snippet,statistics");
request.Id = string.Join(",", videoIDs);
VideoListResponse response = request.Execute();
Это все работает, но при развертывании его в нашем реальном сервере, он должен получить через прокси-сервер таким образом, мы должны поместить следующий код в web.config:
<defaultProxy useDefaultCredentials="false" enabled="true">
<proxy usesystemdefault="False" proxyaddress="http://192.111.111.102:8081" />
</defaultProxy>
Однако, это, кажется, не работает, как, когда вызов сделан, я получаю следующую ошибку:
System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it 216.58.213.74:443
Есть ли способ вручную установить прокси в коде?
Что-то вдоль линий:
WebProxy proxy = new WebProxy("192.111.111.102", 8081);
proxy.Credentials = new NetworkCredential(AppSettings.Variables.ProxyUser, AppSettings.Variables.ProxyPassword, AppSettings.Variables.ProxyDomain);
// apply this to the service or request object here
Проверьте это [SO вопрос] (http://stackoverflow.com/questions/2374187/how-to-upload-to-youtube-using-the-api-via-a-proxy-server), если он может вам помочь. – KENdi
@KENdi, я видел этот ответ, к сожалению, запрос видео-списка не позволяет вам присоединить прокси-сервер, например YouTubeRequest, в ответ – Pete