Загрузка на Youtube через прокси с использованием Java Youtube API - PullRequest
0 голосов
/ 22 мая 2010

Итак, я хочу написать сервлет, который загружает видео на канал YouTube с помощью Java API, но я не могу найти способ указать, что я хочу пройти через прокси-сервер. На этом сайте я видел пример, когда кому-то удалось сделать это с помощью C #, но используемые им классы, похоже, не существуют в Java API. Кому-нибудь удалось успешно это сделать?

Сервис YouTubeService = новый YouTubeService (clientID, developerKey);

1 Ответ

1 голос
/ 15 ноября 2010

Я новичок здесь, поэтому я не могу комментировать посты (и немного опаздываю на эту тему), но Джеспер, я полагаю, что это пример C #, о котором говорил оригинальный постер: Как загрузить на YouTube с помощью API через прокси-сервер

Однако я не вижу никакого "прямого" способа переноса этого примера на Java, так как GDataRequestFactory, похоже, не имеет никаких полей, связанных с прокси.

У меня также были проблемы с клиентской библиотекой Java с прокси в нашем приложении. По сути, библиотека выбирает глобальные настройки прокси Java:

System.getProperty("http.proxyHost");
System.getProperty("http.proxyPort"); 

но почему-то не везде. Точнее, даже если прокси-сервер правильно настроен на Java, аутентификация YouTube (вызов service.setUserCredentials («login», «pwd»)) будет использовать прямое соединение и игнорировать прокси. Но при загрузке видео (вызов service.insert (...)) прокси-сервер будет работать правильно.

С помощью людей из официального списка рассылки YouTube API я смог это зафиксировать. Проблема заключается в том, что аутентификация выполняется с использованием SSL (HTTPS), и поскольку существует другой набор свойств для прокси-сервера HTTPS, это не сработало. Чтобы исправить это, просто установите свойства https.proxy * (в дополнение к http.proxy *), чтобы они также указывали на действительный прокси-сервер:

System.getProperty("https.proxyHost");
System.getProperty("https.proxyPort"); 
...