我想从我的Java Web应用程序上传视频到YouTube上: 我想接收(服务器端)我的authToken和表单动作,以便上传视频。NoLinkedYoutubeAccount错误401在Youtube上使用java上传视频时
- 我创建了一个新的谷歌/ YouTube帐户
- 我已经创建了一个YouTube频道在我的帐户
- 我创建了一个新的项目在我的谷歌API控制台作为服务帐户
现在我试图用oAuth 2.0实现我的代码。 我有accessToken但是,当我尝试调用服务getFormUploadToken(url,object)时,响应始终是相同的“NoLinkedYoutubeAccount错误401”。
我也通过谷歌支持页面http://www.youtube.com/my_account_unlink验证了帐户,但它似乎确定。
有没有人有关于这个问题的想法?
这是我的代码:
HttpTransport HTTP_TRANSPORT = new NetHttpTransport();
JsonFactory JSON_FACTORY = new JacksonFactory();
String accessToken = "";
GoogleCredential credential = null;
credential = new GoogleCredential.Builder().setTransport(HTTP_TRANSPORT)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId(CLIENT_EMAIL)
.setServiceAccountScopes("http://gdata.youtube.com")
.setServiceAccountPrivateKeyFromP12File(new File(PRIVATE_KEY_PATH))
.build();
credential.refreshToken();
accessToken = credential.getAccessToken();
YouTubeService service = new YouTubeService(CLIENT_ID, DEV_KEY);
service.setAuthSubToken(accessToken, null);
VideoEntry newEntry = new YouTubeMediaGroup mg = newEntry.getOrCreateMediaGroup();
mg.setTitle(new MediaTitle());
mg.getTitle().setPlainTextContent("My Test Movie");
URL uploadUrl = new URL("http://gdata.youtube.com/action/GetUploadToken");
FormUploadToken token = service.getFormUploadToken(uploadUrl, newEntry);
非常感谢, 阿尔伯特III
你好杰夫, 谢谢你的回答! 我希望登录我的网站的用户能够在我的频道上上传视频。 这可能吗? 再次感谢 Albert III –
请参阅http://apiblog.youtube.com/2012/02/video-uploads-from-your-sites-community.html,为什么你提出的建议不是一个好主意。 –