6

これは vimeo フォーラムからの再投稿ですが、あちらでは誰も答えていないので、ここで運試しをします。

私は今、oAuth の全体に頭を悩ませようと数時間試みてきましたが、うまくいかないようです。高度な 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' ".

キーとシークレットが正しいことは間違いありません。このことを機能させるために、もっとやらなければならないことはありますか? もちろん、すべての重要なデータを入力するだけで機能する例があれば素晴らしいと思います。

前もって感謝します!

4

1 に答える 1

1

署名エラーのトラブルシューティングに役立つ方法がいくつかあります。まず、いくつかの用語について説明したいと思います。

  • Api エンドポイント- 要求している API URL。
  • クライアント ID / クライアント シークレット- API アプリケーションの作成時に提供されるトークンのペア
  • リクエスト トークン- ユーザーの認証中に生成されるトークン。このトークンを使用して API 呼び出しを行うことはできません。
  • OAuth トークン / トークン シークレット- 承認ワークフローを通じてユーザーを送信するときに提供されるトークンのペア
  • Base String - API リクエストに関連するすべての情報を含む特別にフォーマットされた文字列。
  • OAuth 署名- 作成中のリクエストを表すハッシュ化されたトークン。これは、基本文字列、クライアント ID とシークレット、およびオプションの oauth トークンとシークレットを使用して生成されます。

トラブルシューティング

  1. 公式 PHP ライブラリの最新バージョンを使用してみてください: https://github.com/vimeo/vimeo-php-lib
  • これが機能する場合は、コードに問題があります。ステップ 2 に進みます。
  • これが機能しない場合は、Vimeo にお知らせください。これらの手順を続行する必要はありません。
  1. Hueniverse インタラクティブ ガイドを使用してください: http://hueniverse.com/oauth/guide/authentication/
  • リクエストを作成し、すべての URL、ヘッダー、およびパラメーターをログに記録します。ベース文字列も含めます。
  • すべてのプラス記号をクリックして入力フォームを展開し、適切なデータをすべて入力します。
  1. Hueniverse ベース文字列が、独自に生成されたベース文字列と一致することを確認します
  • これが一致しても署名がまだ正しくない場合は、hmac 署名を正しく実行していない可能性があります。すべてのトークンを確認して、Vimeo にお気軽にお問い合わせください。
  • ベース文字列が一致しない場合は、仕様に従っていることを確認してください: https://www.rfc-editor.org/rfc/rfc5849#section-3.4.1
  1. 他のすべてが失敗した場合は、Vimeo に直接連絡することをお勧めします。認証トークンと予想される署名を検索できます。
于 2013-10-21T16:55:23.960 に答える