2010-05-22 160 views
0

因此,我想編寫一個使用Java API將視頻上傳到YouTube頻道的servlet,但似乎無法找到指定我想要的方式通過代理服務器。我在這個網站上看到一個例子,其中有人設法使用C#來做到這一點,但他們使用的類似乎並不存在於Java API中。有沒有人成功做到這一點?使用Java Youtube API通過代理上傳到Youtube

YouTubeService service = new YouTubeService(clientID,developerKey);

+0

如果你提供一個鏈接使用C#的其他問題,有人可能會告訴你如何在Java中做同樣的事情。 – Jesper 2010-05-22 11:43:25

回答

0

我是新來的,所以我無法對信息發表評論(和關於這一主題有點晚),但加斯帕,我相信這是C#示例,原來的海報在談論:How to upload to YouTube using the API via a Proxy Server

雖然我沒有看到將該示例移植到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");