我有一个Youtube视频的ID,并且喜欢使用google-api-client(Ruby)添加一个缩略图。我的请求如下所示
result = client.execute(:api_method => youtube.thumbnails.set, :parameters => { :videoId => my_video_id, :media_body => file })
result.data
返回的是这个
<Google::APIClient::Schema::Youtube::V3::ThumbnailSetResponse:0x86435518 DATA:{"error"=>{"code"=>500, "message"=>nil}}>
我不知道,这里有什么问题。我尝试使用本地计算机上文件的路径以及URL。即使将空字符串作为文件位置或省略media_body也会导致 500 错误。
你们中有谁知道,这里发生了什么,为什么我没有得到明确的错误响应?
编辑:这似乎不是google-api-client的错,因为在Google APIs资源管理器中测试相同的请求会产生相同的结果:
Response
500 Internal Server Error
cache-control: private, max-age=0
content-encoding: gzip
content-length: 66
content-type: application/json; charset=UTF-8
date: Wed, 19 Feb 2014 14:24:23 GMT
expires: Wed, 19 Feb 2014 14:24:23 GMT
server: GSE
{
"error": {
"code": 500,
"message": null
}
}
并非所有频道都启用了自定义缩略图;我怀疑如果您收到错误,可能是因为您尝试为未启用的频道中的视频设置自定义缩略图。更多信息请访问 https://support.google.com/youtube/answer/72431?hl=en
您能否按照该帮助文章中的步骤进行操作,看看 Web UI 中是否有设置自定义缩略图的选项?如果您不这样做,则您的频道未启用。
但是,返回HTTP 500响应显然没有帮助,并且很难确认这是正在发生的事情。我们可以跟进工程团队,以便在确认您的频道是否已启用后返回有用的错误。