我们正在使用Java 7和YouTube数据API v3开发。

当我们使用“processingDetails”部分调用上传服务时,我们收到503服务不可用错误。我们做错了什么?如果我们将其删除,则可以上传视频。但是我们希望/需要了解有关processingDetails。

这是代码:

YouTube.Videos.Insert videoInsert = this.youtube.videos().insert("snippet,statistics,status,processingDetails", videoObjectDefiningMetadata, mediaContent);

其他一切与Google API中提供的Java客户端相同。

这是请求:
https://www.googleapis.com/upload/youtube/v3/videos?part=snippet,statistics,status,processingDetails

这是异常堆栈跟踪:



谢谢!

最佳答案

两件事情:

  • 您在part请求中包含的youtube.videos.insert()参数值应与您在上传元数据中指定的部分相对应。通常,这是snippet(因为这是包含所需标题和描述的部分),有时是status(如果您还要设置视频的公开/私有(private)状态)。在上传过程中,您无法设置statisticsprocessingDetails,因此您不应将它们包括在零件列表中。上载完成后,您仍然可以通过statistics调用来请求processingDetailsyoutube.videos.list()部分。
  • API应该返回一条有意义的错误消息,向您解释该错误,而不是返回通用503。我将向工程团队提交一个错误,请他们处理。
  • 09-20 22:24