2014-02-19 57 views
1

我有一個Youtube視頻的ID,想用google-api-client(Ruby)添加縮略圖。我的要求是這樣的錯誤500使用Youtube API v3添加縮略圖

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錯誤。

有沒有人知道,這裏發生了什麼,爲什麼我沒有得到明確的錯誤響應?

編輯:這似乎是谷歌的API客戶端的沒有錯,因爲測試在谷歌API的瀏覽器相同的請求產生相同的結果:

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 
} 
} 

回答

0

並不是所有通道都定製啓用縮略圖;我懷疑如果出現錯誤,可能是,因爲您試圖爲未啓用的頻道中的視頻設置自定義縮略圖。有更多信息在https://support.google.com/youtube/answer/72431?hl=en

您可以按照該幫助文章中的步驟查看您是否在Web UI中有一個選項來設置自定義縮略圖嗎?如果你不這樣做,那麼你的頻道沒有啓用。

找回HTTP 500響應顯然沒有幫助,但很難確認這是怎麼回事。一旦我們確認您的頻道是否啓用,我們可以跟進工程團隊,以獲得有用的錯誤。

+0

你說得對,我們忘了啓用擴展功能的頻道,比如添加自定義縮略圖。所以我按照說明激活了一個頻道,之後我可以在網絡用戶界面中設置自定義縮略圖。儘管如此,在控制檯中使用google-api-client的所有嘗試仍然會返回HTTP 500. – Ulfmann

+0

有關Ruby客戶端的問題,請參閱https://github.com/google/google-api-ruby-client/issues/89圖書館。我相信這個bug線程的解決方法對於庫的最新版本來說是不需要的,所以升級也可以提供幫助。 –

+0

非常感謝您花時間在這個問題上。不幸的是,解決方法和google-api-client的最新版本都沒有改變。怎麼樣的API資源管理器https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.thumbnails.set我也有一個500。 – Ulfmann