2010-05-22 150 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");