2012-08-27 193 views
6

這是從VIMEO論壇上轉貼,但因爲沒有人回答那邊,我在這裏盡我的運氣:獲取的私人視頻的視頻縮略圖在Vimeo

我一直在嘗試了一段時間,現在讓我圍繞整個oAuth的事情,但我似乎並沒有得到它的工作。我想使用advanced vimeo api檢索私人視頻的縮略圖。這就是我現在所擁有的:

$vimeo = new phpVimeo($consumer_key, $consumer_secret, $access_token, $access_token_secret); 
$result = $vimeo->call('vimeo.videos.getThumbnailUrls', array('video_id ' => $video_id)); 

當我嘗試像這樣,我不斷收到錯誤

"Fatal error: Uncaught exception 'VimeoAPIException' with message 'Invalid signature' ". 

我絕對肯定的是,密鑰和祕密是正確的。我需要做更多才能使這件事情起作用嗎?當然,舉個例子,我只需要把所有的關鍵數據都放入其中就行了。

在此先感謝!

回答

1

有幾種方法可以幫助解決您的簽名錯誤。首先,我想解釋一些術語。

  • Api Endpoint - 您請求的api網址。
  • 客戶端ID /客戶端祕密 - 一雙給你的令牌當你創建API應用程序
  • 請求令牌 - 而授權用戶生成的令牌。此令牌不能用於進行api調用。
  • OAuth令牌/令牌密鑰 - 一雙給你,當你通過你的授權流程
  • 基本字符串發送用戶令牌 - 包含所有與您的API請求的信息的專門格式的字符串。
  • OAuth簽名 - 一個哈希標記,表示您正在創建的請求。這是使用基本字符串,您的客戶端ID和密碼以及可選的oauth令牌和祕密生成的。

故障排除

  1. 嘗試使用最新版本的官方PHP庫:https://github.com/vimeo/vimeo-php-lib
    • 如果這個工作,你的代碼有問題。繼續執行步驟2.
    • 如果這不起作用,請讓Vimeo知道。您不需要繼續這些步驟。
  2. 使用Hueniverse交互式指南:http://hueniverse.com/oauth/guide/authentication/
    • 發出請求,並記錄每一個URL,標題和參數。還包括基本字符串。
    • 點擊所有加號以展開輸入表格,然後填寫所有相應的數據。
  3. 確保Hueniverse基本字符串匹配自己生成的基本字符串
    • 如果匹配,並且簽名仍然不正確,你很可能不正確地執行HMAC簽名。檢查所有的令牌,隨時聯繫Vimeo。
    • 如果基礎線不匹配,請確保您有以下規範:http://tools.ietf.org/html/rfc5849#section-3.4.1
  4. 如果一切都失敗了,你最好的選擇是直接聯繫的Vimeo。他們可以查找您的身份驗證令牌和預期的簽名。